The example in this article describes the PHP implementation of the Model base class based on mysqli. Share it with everyone for your reference, the details are as follows:
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; } } ?>
Readers who are interested in more PHP-related content can check out this site's special topic: "PHP Summary of skills for operating databases based on pdo", "Summary of PHP operations and operator usage", "Summary of PHP network programming skills", "Introduction tutorial on basic PHP syntax", "Summary of skills for operating office documents with PHP (including word, excel, access, ppt )", "php date and time usage summary", "php object-oriented programming introductory tutorial", "php string (string) usage summary", "php+mysql database operation introductory tutorial" and "php common database operation skills summary" 》
I hope this article will be helpful to everyone in PHP programming.
The above introduces a complete example of PHP implementing the Model base class based on mysqli, including Mysql and model aspects. I hope it will be helpful to friends who are interested in PHP tutorials.