PHP封装的mysqli数据库操作类示例

时间:2022-07-27
本文章向大家介绍PHP封装的mysqli数据库操作类示例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例讲述了PHP封装的mysqli数据库操作类。分享给大家供大家参考,具体如下:

由于PHPMySQL操作在PHP5.4以下被弃用而推荐使用mysqli(MySQL Improvement),这里是在我原有的MySQL数据库操作类的基础上加以改进而编写出的MySQLI数据库操作类,整体代码与MySQL数据库操作类大致相同,直接实例化db_class即可

<?php
class db_class{
public $db_url; //连接地址
public $db_username; //连接名
public $db_userpassword; //连接密码
public $db_name; //数据库名
public $db_tablename; //表名
public $db_conn; //数据库连接
public $db_order;
public $db_limit;
public function db_getconn(){ //连接数据库
$this- db_conn= mysqli_connect($this- db_url,$this- db_username,$this- db_userpassword,$this- db_name);
if (!$this- db_conn)
{
echo "连接 MySQL 失败: " . mysqli_connect_error();
}
}
public function __construct($db_url,$db_username,$db_userpassword,$db_name){ //构造方法赋值
$this- db_url=$db_url;
$this- db_username=$db_username;
$this- db_userpassword=$db_userpassword;
$this- db_name=$db_name;
$this- db_order="";
$this- db_limit="";
$this- db_getconn();
mysqli_query($this- db_conn,'set names utf8');
}
public function db_settablename($db_tablename){ //设置表名
$this- db_tablename=$db_tablename;
}
public function db_setorder($str){ //排序操作
$this- db_order="order by $str";
}
public function db_setlimit($start,$end){ //分页操作
$this- db_limit="limit $start,$end";
}
public function db_select($typearr="",$where=""){ //查询操作
if(empty($typearr)){
$typearr="*";
}
else{
$typearr=implode(",",$typearr);
}
if(empty($where)){
$where="";
}else{
$where="where ".$where;
}
$arr=array();
$sql="select $typearr from $this- db_tablename $where $this- db_order $this- db_limit ";
$result = mysqli_query($this- db_conn,$sql);
while($row = $result- fetch_array()) {
$arr[]=$row;
}
return $arr;
}
public function db_update($typearr,$valuearr,$where=""){ //更新操作
$sql="";
if(empty($where)){
$where="";
}else{
$where=" where ".$where;
}
$sql.="update $this- db_tablename set ";
foreach ($typearr as $key= $value){
if(count($typearr)-1==$key){
$sql.=$value."='".$valuearr[$key]."'";
}else{
$sql.=$value."='".$valuearr[$key]."'".",";
}
}
$sql.=$where;
mysqli_query($this- db_conn,$sql);
}
public function db_delete($typestr,$valuestr){ //删除操作
$sql="delete from $this- db_tablename WHERE $typestr=$valuestr";
mysqli_query($this- db_conn,$sql);
}
public function db_insert($typearr,$valuearr){ //插入操作
$sql="insert into $this- db_tablename(".implode(",", $typearr).") values(".implode(",", $valuearr).")";
mysqli_query($this- db_conn,$sql);
}
public function __destruct(){ //析构方法关闭连接
mysqli_close($this- db_conn);
}
}