PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
本文实例讲述了PHP基于MySQLI函数封装的数据库连接工具类。分享给大家供大家参考,具体如下:
mysql.class.php:
mysqli=newmysqli($host,$username,$password,$database,$port);
}
/**
*数据查询
*@param$table数据表
*@paramnull$field字段
*@paramnull$where条件
*@returnmixed查询结果数目
*/
publicfunctionselect($table,$field=null,$where=null)
{
$sql="SELECT*FROM{$table}";
if(!empty($field)){
$field='`'.implode('`,`',$field).'`';
$sql=str_replace('*',$field,$sql);
}
if(!empty($where)){
$sql=$sql.'WHERE'.$where;
}
$this->result=$this->mysqli->query($sql);
return$this->result->num_rows;
}
/**
*@returnmixed获取全部结果
*/
publicfunctionfetchAll()
{
return$this->result->fetch_all(MYSQLI_ASSOC);
}
/**
*插入数据
*@param$table数据表
*@param$data数据数组
*@returnmixed插入ID
*/
publicfunctioninsert($table,$data)
{
foreach($dataas$key=>$value){
$data[$key]=$this->mysqli->real_escape_string($value);
}
$keys='`'.implode('`,`',array_keys($data)).'`';
$values='\''.implode("','",array_values($data)).'\'';
$sql="INSERTINTO{$table}({$keys})VALUES({$values})";
$this->mysqli->query($sql);
return$this->mysqli->insert_id;
}
/**
*更新数据
*@param$table数据表
*@param$data数据数组
*@param$where过滤条件
*@returnmixed受影响记录
*/
publicfunctionupdate($table,$data,$where)
{
foreach($dataas$key=>$value){
$data[$key]=$this->mysqli->real_escape_string($value);
}
$sets=array();
foreach($dataas$key=>$value){
$kstr='`'.$key.'`';
$vstr='\''.$value.'\'';
array_push($sets,$kstr.'='.$vstr);
}
$kav=implode(',',$sets);
$sql="UPDATE{$table}SET{$kav}WHERE{$where}";
$this->mysqli->query($sql);
return$this->mysqli->affected_rows;
}
/**
*删除数据
*@param$table数据表
*@param$where过滤条件
*@returnmixed受影响记录
*/
publicfunctiondelete($table,$where)
{
$sql="DELETEFROM{$table}WHERE{$where}";
$this->mysqli->query($sql);
return$this->mysqli->affected_rows;
}
}
使用方法
'mysql',
'host'=>'localhost',
'username'=>'woider',
'password'=>'3243',
'database'=>'php',
'port'=>'3306'
);
/*连接数据库*/
$mysql=newmysql();
$mysql->connect($config);
/*查询数据*/
//1、查询所有数据
$table='mysqli';//数据表
$num=$mysql->select($table);
echo'共查询到'.$num.'条数据';
print_r($mysql->fetchAll());
//2、查询部分数据
$field=array('username','password');//过滤字段
$where='id%2=0';//过滤条件
$mysql->select($table,$field,$where);
print_r($mysql->fetchAll());
/*插入数据*/
$table='mysqli';//数据表
$data=array(//数据数组
'username'=>'admin',
'password'=>sha1('admin')
);
$id=$mysql->insert($table,$data);
echo'插入记录的ID为'.$id;
/*修改数据*/
$table='mysqli';//数据表
$data=array(
'password'=>sha1('nimda')
);
$where='id=44';
$rows=$mysql->update($table,$data,$where);
echo'受影响的记录数量为'.$rows.'条';
/*删除数据*/
$table='mysqli';
$where='id=45';
$rows=$mysql->delete($table,$where);
echo'已删除'.$rows.'条数据';
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。