ホームページ  >  記事  >  バックエンド開発  >  PHP で mysqli に基づいた Model 基本クラスを実装する方法と例

PHP で mysqli に基づいた Model 基本クラスを実装する方法と例

墨辰丷
墨辰丷オリジナル
2018-06-04 09:54:111364ブラウズ

この記事では、mysqli をベースにした Model 基底クラスを PHP で実装する方法と例を中心に紹介しますので、興味のある方は参考にしていただければ幸いです。

詳細は以下の通りです:

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 &#39;数据库连接错误!错误代码:&#39;.mysqli_connect_error();
          exit();
       }
       $_mysqli->set_charset(&#39;utf8&#39;);
       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 &#39;$_table&#39;";
       $_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 で一般的に使用される配列操作メソッドの詳細な説明

PHP がユーザー アクセス IP アドレスを取得するためのいくつかのメソッドの詳細な説明

以上がPHP で mysqli に基づいた Model 基本クラスを実装する方法と例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。