本文實例講述了PHP實現基於mysqli的Model基類。分享給大家供大家參考,具體如下:
DB.class.php
<?php //數據庫連接類 class DB { //獲取對象句柄 static public function getDB() { $_mysqli = new mysqli(DB_HOST,DB_USER,DB_PASS,DB_NAME); if (mysqli_connect_errno()) { echo '數據庫連接錯誤!錯誤代碼:'.mysqli_connect_error(); exit(); } $_mysqli->set_charset('utf8'); return $_mysqli; } //清理,釋放資源 static public function unDB(&$_result, &$_db) { if (is_object($_result)) { $_result->free(); $_result = null; } if (is_object($_db)) { $_db->close(); $_db = null; } } } ?>
Model.class.php
<?php //模型基類 class Model { //執行多條SQL語句 public function multi($_sql) { $_db = DB::getDB(); $_db->multi_query($_sql); DB::unDB($_result = null, $_db); return true; } //獲取下一個增值id模型 public function nextid($_table) { $_sql = "SHOW TABLE STATUS LIKE '$_table'"; $_object = $this->one($_sql); return $_object->Auto_increment; } //查找總記錄模型 protected function total($_sql) { $_db = DB::getDB(); $_result = $_db->query($_sql); $_total = $_result->fetch_row(); DB::unDB($_result, $_db); return $_total[0]; } //查找單個數據模型 protected function one($_sql) { $_db = DB::getDB(); $_result = $_db->query($_sql); $_objects = $_result->fetch_object(); DB::unDB($_result, $_db); return Tool::htmlString($_objects); } //查找多個數據模型 protected function all($_sql) { $_db = DB::getDB(); $_result = $_db->query($_sql); $_html = array(); while (!!$_objects = $_result->fetch_object()) { $_html[] = $_objects; } DB::unDB($_result, $_db); return Tool::htmlString($_html); } //增刪修模型 protected function aud($_sql) { $_db = DB::getDB(); $_db->query($_sql); $_affected_rows = $_db->affected_rows; DB::unDB($_result = null, $_db); return $_affected_rows; } } ?>
更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP基於pdo操作數據庫技巧總結》、《PHP運算與運算符用法總結》、《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。