PHP封裝的mysqli數據庫操作類示例

這篇文章主要介紹了PHP封裝的mysqli數據庫操作類,涉及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);
    }
}

更多關於PHP相關內容感興趣的讀者可查看本站專題:《php+mysqli數據庫程序設計技巧總結》、《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧彙總

希望本文所述對大家PHP程序設計有所幫助。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章