中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php中如何實現的mongoDB單例模式操作類

發布時間:2021-06-03 11:22:08 來源:億速云 閱讀:138 作者:小新 欄目:開發技術

小編給大家分享一下php中如何實現的mongoDB單例模式操作類,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

本文實例講述了php實現的mongoDB單例模式操作類。分享給大家供大家參考,具體如下:

看了好多mongo類都不盡人意。最后發現根本不需要自己封裝類。php mongo 的擴展自帶的方法就已經很方便了

但是習慣性的把數據庫連接部分封裝起來。最后我就封裝了一個單例模式的數據庫類

使用單例模式是為了避免生成多個實例,浪費資源

下面是封裝的代碼

class Mongo_db
{
  private static $cli;
  /**
   * 不允許初始化
   */
  private function __construct()
  {
    $config = Config::get('config.mongo_config');
    if(empty($config)){
      $this->throwError('無法連接數據庫!');
    }
    if (!empty($config["user_name"])) {
      $this->mongo = new MongoClient("mongodb://{$config['user_name']}:{$config['password']}@{$config['host']}:{$config['port']}");
    }else {
      $this->mongo = new MongoClient($config['host'] . ':' . $config['port']);
    }
  }
  /**
  * 單例模式
  * @return Mongo|null
  */
 public static function cli(){
  if(!(self::$cli instanceof self)){
   self::$cli = new self();
  }
  return self::$cli->mongo;
 }
}
$mongo = Mongo_db::cli()->test->mycollection; // test 是選擇的數據庫 , mycollection 是選擇的表。 因為使用單例模式,所以,只會實例一個資源具體操作再參考下面的文章吧

以上是“php中如何實現的mongoDB單例模式操作類”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

航空| 三原县| 疏勒县| 鸡泽县| 渝北区| 墨脱县| 平山县| 和静县| 三明市| 南丹县| 丘北县| 饶河县| 扶余县| 沙坪坝区| 库伦旗| 叙永县| 大丰市| 定结县| 土默特右旗| 中阳县| 名山县| 元氏县| 太仓市| 高州市| 台南市| 扎鲁特旗| 富阳市| 金门县| 新建县| 南部县| 武胜县| 新野县| 上栗县| 伊吾县| 德庆县| 乌兰浩特市| 车致| 兴仁县| 壶关县| 和田县| 阳谷县|