加入收藏 | 设为首页 | 会员中心 | 我要投稿 丽水站长网 (https://www.0578zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-06-23 19:02:50 所属栏目:PHP教程 来源:互联网
导读:本文实例讲述了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_c
  本文实例讲述了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;
  
       }
  
    }
  
  ?>。
 

(编辑:丽水站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读