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);
	}
}

 

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