PHP实现基于mysqli的Model基类完整实例

时间:2021-05-26

本文实例讲述了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程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章