PHP实现基于mysqli的Model基类完整实例
本文实例讲述了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程序设计有所帮助。
相关文章
php数组函数序列之array_values() 获取数组元素值的函数与方法
array_keys() 函数返回包含数组中所有键名的一个新数组。如果提供了第二个参数,则只返回键值为该值的键名2011-10-10
Warning: require(): open_basedir restriction in effect,
在linux服务器部署thinkphp5的时候PHP报了Warning: require(): open_basedir restriction in effect这个错误,是因为网站目录配置错误,PHP不能引入其授权目录上级及其以上的文件。下面详细讲解如何处理这个问题,需要的朋友可以参考下2022-11-11


最新评论