婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > PHP模型Model類封裝數(shù)據(jù)庫操作示例

PHP模型Model類封裝數(shù)據(jù)庫操作示例

熱門標(biāo)簽:銀川ai電話機(jī)器人 地圖標(biāo)注風(fēng)向標(biāo) 安陽自動(dòng)外呼系統(tǒng)價(jià)格是多少 臨沂智能電銷機(jī)器人軟件 芒果電銷機(jī)器人 上海公司外呼系統(tǒng)線路 浙江外呼電話系統(tǒng)軟件 十堰ai電話機(jī)器人效果怎么樣 電梯外呼線路板維修視頻

本文實(shí)例講述了PHP模型Model類封裝數(shù)據(jù)庫操作。分享給大家供大家參考,具體如下:

?php
  //引入配置文件
  include "./config.php";
  class Model
  {
    public $link;//存儲(chǔ)連接對(duì)象
    public $tableName = "";//存儲(chǔ)表名
    public $field = "*";//存儲(chǔ)字段
    public $allFields = [];//存儲(chǔ)當(dāng)前表所有字段
    public $where = "";//存儲(chǔ)where條件
    public $order = "";//存儲(chǔ)order條件
    public $limit = "";//存儲(chǔ)limit條件
    /**
     * 構(gòu)造方法 初始化
     * @param string $tableName 要操作的表名
     */
    public function __construct($tableName)
    {
      //1.存儲(chǔ)操作的表名
      $this->tableName = PRE.$tableName;
      //2.初始化連接數(shù)據(jù)庫
      $this->getConnect();
      //3.獲得當(dāng)前表的所有字段
      $this->getFields();
    }
    /**
     * 初始化連接數(shù)據(jù)庫操作
     */
    public function getConnect()
    {
      //1.連接數(shù)據(jù)庫
      $this->link = mysqli_connect(HOST,USER,PWD,DB,PORT);
      //2.判斷連接
      if (mysqli_connect_errno($this->link)>0){
        echo mysqli_connect_error($this->link);
        exit;
      }
    }
    /**
     * 執(zhí)行并發(fā)送SQL(查詢)
     * @param string $sql 要查詢的SQL語句
     * @return array 返回查詢出來的二維數(shù)組
     */
    public function query($sql)
    {
      $result = mysqli_query($this->link,$sql);
      if ($result  mysqli_num_rows($result)>0) {
       $arr = [];
       while($row = mysqli_fetch_assoc($result)){
          $arr[] = $row;
       }
      }
    return $arr;
    }
    /**
     * 獲取當(dāng)前表的所有字段
     */
    public function getFields()
    {
      //查看表結(jié)構(gòu)
      $sql = "desc {$this->tableName}";
      //執(zhí)行并發(fā)送SQL
      $result = $this->query($sql);
      $fields = [];
      foreach ($result as $k => $v){
        $fields[] = $v['Field'];
      }
      $this->allFields = $fields;
    }
    /**
     * 執(zhí)行并發(fā)送SQL語句(增刪改)
     * @param string $sql 要執(zhí)行的SQL語句
     * @return bool|int|string 添加成功則返回上一次操作id,刪除修改操作則返回true,失敗則返回false
     */
    public function exec($sql)
    {
      $result = mysqli_query($this->link,$sql);
      //處理結(jié)果集
      if ($result  mysqli_affected_rows($this->link)>0){
        //判斷是否為添加操作,是則返回上一次執(zhí)行的id
        if (mysqli_insert_id($this->link)){
          return mysqli_insert_id($this->link);
        }
        //刪除修改操作成功則返回true
        return true;
      }else{
        //未執(zhí)行成功則返回false
        return false;
      }
    }
    /**
     * 查詢多條數(shù)據(jù)
     */
    public function select()
    {
      $sql = "select {$this->field} from {$this->tableName} {$this->where} {$this->order} {$this->limit}";
      //執(zhí)行并發(fā)送SQL
      return $this->query($sql);
    }
    /**
     * 查詢一條數(shù)據(jù)
     * @param string $id 要查詢的id
     * @return array 返回一條數(shù)據(jù)
     */
    public function find($id="")
    {
      //判斷id是否存在
      if (empty($id)){
        $where = $this->where;
      }else{
        $where = "where id={$id}";
      }
      $sql = "select {$this->field} from {$this->tableName} {$where} limit 1";
      //執(zhí)行并發(fā)送sql
      $result = $this->query($sql);
      //返回一條數(shù)據(jù)
      return $result[0];
    }
    /**
     * 設(shè)置要查詢的字段信息
     * @param string $field 要查詢的字段
     * @return object 返回自己,保證連貫操作
     */
    public function field($field)
    {
      //判斷字段是否存在
      if (empty($field)){
        return $this;
      }
      $this->field = $field;
      return $this;
    }
    /**
     * 統(tǒng)計(jì)總條數(shù)
     * @return int 返回總數(shù)
     */
    public function count()
    {
      //準(zhǔn)備SQL語句
      $sql = "select count(*) as total from {$this->tableName} limit 1";
      $result = $this->query($sql);
      //返回總數(shù)
      return $result[0]['total'];
    }
    /**
     * 添加操作
     * @param array $data 要添加的數(shù)組
     * @return bool|int|string 添加成功則返回上一次操作的id,失敗則返回false
     */
    public function add($data){
      //判斷是否是數(shù)組
      if (!is_array($data)){
        return $this;
      }
      //判斷是否全是非法字段
      if (empty($data)){
        die("非法數(shù)據(jù)");
      }
      //過濾非法字段
      foreach ($data as $k => $v){
        if (!in_array($k,$this->allFields)){
          unset($data[$k]);
        }
      }
      //將數(shù)組中的鍵取出
      $keys = array_keys($data);
      //將數(shù)組中取出的鍵轉(zhuǎn)為字符串拼接
      $key = implode(",",$keys);
      //將數(shù)組中的值轉(zhuǎn)化為字符串拼接
      $value = implode("','",$data);
      //準(zhǔn)備SQL語句
      $sql = "insert into {$this->tableName} ({$key}) values('{$value}')";
      //執(zhí)行并發(fā)送SQL
      return $this->exec($sql);
    }
    /**
     * 刪除操作
     * @param string $id 要?jiǎng)h除的id
     * @return bool 刪除成功則返回true,失敗則返回false
     */
    public function delete($id="")
    {
      //判斷id是否存在
      if (empty($id)){
        $where = $this->where;
      }else{
        $where = "where id={$id}";
      }
      $sql = "delete from {$this->tableName} {$where}";
      echo $sql;
      //執(zhí)行并發(fā)送
      return $this->exec($sql);
    }
    /**
     * 修改操作
     * @param array $data 要修改的數(shù)組
     * @return bool 修改成功返回true,失敗返回false
     */
    public function update($data){
      //判斷是否是數(shù)組
      if (!is_array($data)){
        return $this;
      }
      //判斷是否是全是非法字段
      if(empty($data)){
        die("非法數(shù)據(jù)");
      }
      $str = "";
      //過濾非法字段
      foreach ($data as $k => $v){
        if ($k == "id"){
          $where = "where id={$v}";
          unset($data[$k]);
        }
        if (in_array($k,$this->allFields)){
          $str .= "{$k}='{$v}',";
        }else{
          unset($data[$k]);
        }
      }
      //判斷是否有條件
      if (empty($this->where)){
        die("請(qǐng)輸入條件");
      }
      //去掉最右側(cè)的逗號(hào)
      $str = rtrim($str,",");
      $sql = "update {$this->tableName} set {$str} {$this->where}";
      return $this->exec($sql);
    }
    /**
     * where條件
     * @param string $where 輸入的where條件
     * @return $this 返回自己,保證連貫操作
     */
    public function where($where)
    {
      $this->where = "where ".$where;
      return $this;
    }
    /**
     * order排序條件
     * @param string $order 以此為基準(zhǔn)進(jìn)行排序
     * @return $this 返回自己,保證連貫操作
     */
    public function order($order)
    {
      $this->order = "order by ".$order;
      return $this;
    }
    /**
     * limit條件
     * @param string $limit 輸入的limit條件
     * @return $this 返回自己,保證連貫操作
     */
    public function limit($limit)
    {
      $this->limit = "limit ".$limit;
      return $this;
    }
    /**
     * 析構(gòu)方法
     * 關(guān)閉數(shù)據(jù)庫連接
     */
    public function __destruct()
    {
      mysqli_close($this->link);
    }
  }
 //自行調(diào)試
 $a = new Model("表名");
 // var_dump($a->find(3));
 // var_dump($a->select());
  // var_dump($a->count());
  // $res = $a->select();
  //var_dump($res);
?>

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php+mysqli數(shù)據(jù)庫程序設(shè)計(jì)技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:
  • php封裝db類連接sqlite3數(shù)據(jù)庫的方法實(shí)例
  • php db類庫進(jìn)行數(shù)據(jù)庫操作
  • PHP基于MySQLI函數(shù)封裝的數(shù)據(jù)庫連接工具類【定義與用法】
  • PHP數(shù)據(jù)庫表操作的封裝類及用法實(shí)例詳解
  • PHP封裝的PDO數(shù)據(jù)庫操作類實(shí)例
  • PHP數(shù)據(jù)庫處理封裝類實(shí)例
  • php簡(jiǎn)單數(shù)據(jù)庫操作類的封裝
  • PHP封裝mysqli基于面向?qū)ο蟮膍ysql數(shù)據(jù)庫操作類與用法示例
  • PHP封裝的mysqli數(shù)據(jù)庫操作類示例
  • PHP封裝的數(shù)據(jù)庫模型Model類完整示例【基于PDO】
  • PHP封裝類似thinkphp連貫操作數(shù)據(jù)庫Db類與簡(jiǎn)單應(yīng)用示例

標(biāo)簽:遵義 常州 寧夏 吐魯番 荊門 武威 遂寧 徐州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP模型Model類封裝數(shù)據(jù)庫操作示例》,本文關(guān)鍵詞  PHP,模型,Model,類,封裝,數(shù)據(jù)庫,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP模型Model類封裝數(shù)據(jù)庫操作示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于PHP模型Model類封裝數(shù)據(jù)庫操作示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人一级视频在线观看| 91欧美一区二区| 日本强好片久久久久久aaa| 久久99精品久久久| 色欧美乱欧美15图片| 亚洲精品一区二区三区香蕉 | 亚洲自拍与偷拍| 国产成人亚洲综合a∨猫咪| 337p亚洲精品色噜噜噜| 一区二区三区不卡在线观看| 国产suv精品一区二区三区| 欧美日韩国产高清一区二区三区| 亚洲视频免费在线观看| 久久精品人人爽人人爽| 韩国在线一区二区| 欧美一区二区三区在线看| 一区二区三区不卡视频 | 樱花影视一区二区| 成人综合在线视频| 久久久久久99久久久精品网站| 91精品综合久久久久久| 欧美国产精品v| 色综合久久中文综合久久97| 亚洲国产视频在线| 91精品国产综合久久久久| 男人的天堂亚洲一区| 精品少妇一区二区三区视频免付费 | 国产98色在线|日韩| 国产精品久久毛片| 国内外成人在线| 精品国产乱码久久久久久闺蜜| 亚洲美女在线一区| 99精品久久免费看蜜臀剧情介绍| 亚洲色图20p| 色一区在线观看| 亚洲大片一区二区三区| 欧美老人xxxx18| 亚洲欧洲av在线| 国产一区三区三区| 欧美日本在线播放| 欧美日韩国产一级二级| 国产毛片精品国产一区二区三区| 久久亚洲综合色| 另类专区欧美蜜桃臀第一页| 日韩免费看网站| 免费观看日韩av| 欧美一区二区三区视频免费播放 | 国产精品另类一区| 亚洲精品国产成人久久av盗摄| 成人app软件下载大全免费| 97se亚洲国产综合自在线观| 国产亚洲精品福利| 久久电影网站中文字幕 | 三级影片在线观看欧美日韩一区二区 | 成人丝袜18视频在线观看| 色婷婷av一区二区三区大白胸 | 日本不卡一区二区三区高清视频| 国产激情视频一区二区在线观看| 欧美精选一区二区| 亚洲综合激情小说| 久热成人在线视频| 欧美四级电影在线观看| 国产精品亚洲专一区二区三区| 中文字幕成人网| 91久久精品一区二区二区| 久久精品国产99久久6| 成人免费视频一区| 欧美日韩在线亚洲一区蜜芽| 亚洲女女做受ⅹxx高潮| 日韩西西人体444www| 91亚洲午夜精品久久久久久| 亚洲天堂中文字幕| 精品剧情v国产在线观看在线| 国产69精品久久99不卡| 国产视频一区在线播放| 国产精品资源在线| 国产精品美女久久久久久2018| 成人免费视频播放| 秋霞午夜av一区二区三区| 精品国产一区二区三区不卡| 亚洲精品欧美专区| 91传媒视频在线播放| 岛国一区二区三区| 国产精品一二二区| 日韩电影免费一区| 亚洲乱码国产乱码精品精98午夜| 日韩一区二区电影网| 美女视频免费一区| 在线影院国内精品| 91精品国产综合久久久久久久久久| 欧美三级日韩三级| 香蕉久久一区二区不卡无毒影院| 久久亚洲捆绑美女| 欧美日韩在线播| 91年精品国产| 欧美性大战久久久久久久| 在线观看一区日韩| 国产精品一区三区| 青青草国产成人99久久| ww久久中文字幕| 日韩一级高清毛片| 亚洲一卡二卡三卡四卡五卡| 波多野结衣中文字幕一区| 日韩经典中文字幕一区| 亚洲一区二区精品久久av| 国产人妖乱国产精品人妖| 亚洲精品第1页| 激情久久五月天| 欧美一级日韩免费不卡| 色婷婷狠狠综合| 欧亚洲嫩模精品一区三区| 欧美zozozo| 婷婷中文字幕一区三区| 国产一区二区三区免费| 色综合一个色综合亚洲| 欧美日韩在线不卡| 日韩精品一区在线| 蜜臀av一级做a爰片久久| 亚洲人亚洲人成电影网站色| 亚洲一区二区美女| 美女性感视频久久| 欧美午夜精品久久久久久超碰| 亚洲免费电影在线| 99这里只有久久精品视频| 欧美一区二区三区思思人| 国产精品欧美久久久久无广告| 久久麻豆一区二区| 久久国产视频网| 91精品福利在线一区二区三区 | 国产一区在线观看视频| 丁香六月综合激情| 正在播放亚洲一区| 国产成人精品三级麻豆| 自拍偷拍亚洲欧美日韩| 国产成a人无v码亚洲福利| 国产一区二区视频在线播放| 欧美成人高清电影在线| 日韩高清不卡一区二区| 国产婷婷一区二区| 毛片av一区二区| 欧美一区二区私人影院日本| 国产亚洲污的网站| 国产精品资源在线看| 婷婷开心激情综合| 色综合久久久久综合| 日韩专区欧美专区| 久久aⅴ国产欧美74aaa| 一区二区三区中文免费| 欧美一区二区三区精品| 精品一区二区三区免费| 日韩三级在线免费观看| 成人精品视频一区| av午夜精品一区二区三区| 日本在线不卡一区| 亚洲欧洲精品天堂一级| 欧美系列日韩一区| 欧美中文字幕不卡| 99精品视频在线观看免费| 国产一区二区久久| 亚洲六月丁香色婷婷综合久久| 视频一区视频二区中文字幕| 亚洲天堂网中文字| 日韩一区在线免费观看| 欧美一区二区三区爱爱| 91丝袜美腿高跟国产极品老师 | 成人性视频免费网站| 亚洲制服丝袜av| 亚洲黄色小视频| 国产精品免费视频一区| 国产视频一区二区在线| 国产女人18水真多18精品一级做| 国产毛片精品国产一区二区三区| 亚洲国产精品国自产拍av| 久久精品国产第一区二区三区| 日韩写真欧美这视频| 国产成人综合亚洲网站| 亚洲欧洲www| 欧美一级在线视频| 91在线视频播放| 精品中文av资源站在线观看| 天天射综合影视| 9191成人精品久久| 亚洲欧洲美洲综合色网| a4yy欧美一区二区三区| 91精品国产入口| 又紧又大又爽精品一区二区| 九一九一国产精品| 欧洲av一区二区嗯嗯嗯啊| 国产日韩在线不卡| 不卡的av中国片| 久久综合色天天久久综合图片| 午夜精品一区二区三区三上悠亚 | 国产jizzjizz一区二区| 国产精品888| 欧美aaaaa成人免费观看视频| 国产精品久久久久影院老司 | 日韩高清欧美激情| 中文字幕精品综合| 日韩欧美二区三区| 精品久久久久久无|