佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > TP5(thinkPHP5)框架mongodb擴展安裝及特殊操作示例

TP5(thinkPHP5)框架mongodb擴展安裝及特殊操作示例

熱門標簽:團購網(wǎng)站 電子圍欄 服務器配置 阿里云 銀行業(yè)務 Mysql連接數(shù)設置 Linux服務器 科大訊飛語音識別系統(tǒng)

本文實例講述了TP5(thinkPHP5)框架mongodb擴展安裝及特殊操作。分享給大家供大家參考,具體如下:

ThinkPHP 5.0 MongoDb驅(qū)動

首先安裝官方的mongodb擴展:

http://pecl.php.net/package/mongodb

找到對應的php版本的擴展

然后,配置應用的數(shù)據(jù)庫配置文件database.php的type參數(shù)為:

'type' => '\think\mongo\Connection',

即可正常使用MongoDb,例如:

使用最新mongodb擴展

Db::name('demo')
  ->find();
Db::name('demo')
  ->field('id,name')
  ->limit(10)
  ->order('id','desc')
  ->select();

或者使用模型操作:

User::get(1);
User::all('1,2,3');

MongoDb默認的主鍵是_id并且是一個ObjectID對象,如果需要和mysql一樣使用id作為主鍵,可以如下參數(shù):

// 強制把_id轉換為id
'pk_convert_id' => true,

tp5 Mongodb特殊操作

Push操作

添加數(shù)據(jù)

public function add(){
    $this->data = [
      '作者'  => 'tuzi',
      '年齡'  => '22',
      '標題'  => '防塔與補兵',
      '評論'  => [
        [
          '序號'  => '001',
          '內(nèi)容'  => '五殺'
        ]
      ]
    ];
    $res = Db::table('document')->insert($this->data);
    if($res){
      echo "success";
    }else{
      echo "error";
    }
}

結果

array(1) {
  [0] => array(5) {
    ["_id"] => object(MongoDB\BSON\ObjectId)#12 (1) {
      ["oid"] => string(24) "5a51f73083869e4b65549c36"
    }
    ["作者"] => string(4) "tuzi"
    ["年齡"] => string(2) "22"
    ["標題"] => string(15) "防塔與補兵"
    ["評論"] => array(1) {
      [0] => array(2) {
        ["序號"] => string(3) "001"
        ["內(nèi)容"] => string(6) "五殺"
      }
    }
  }
}

利用push更新數(shù)據(jù)

public function update()
{
    $update_data['評論'] = [
      '$push',
      [
        '序號'  => '002',
        '內(nèi)容'  => '三殺'
      ]
    ];
    $update_res = Db::table('document')->where('標題','防塔與補兵')->update($update_data);
    if($update_res){
      echo "success";
    }else{
      echo "error";
    }
}

結果

array(1) {
  [0] => array(5) {
    ["_id"] => object(MongoDB\BSON\ObjectId)#12 (1) {
      ["oid"] => string(24) "5a51f73083869e4b65549c36"
    }
    ["作者"] => string(4) "tuzi"
    ["年齡"] => string(2) "22"
    ["標題"] => string(15) "防塔與補兵"
    ["評論"] => array(2) {
      [0] => array(2) {
        ["序號"] => string(3) "001"
        ["內(nèi)容"] => string(6) "五殺"
      }
      [1] => array(2) {
        ["序號"] => string(3) "002"
        ["內(nèi)容"] => string(6) "三殺"
      }
    }
  }
}

更多關于thinkPHP相關內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結》、《ThinkPHP常用方法總結》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術總結》。

希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。

您可能感興趣的文章:
  • 解決php擴展安裝不生效問題
  • Mac下關于PHP環(huán)境和擴展的安裝詳解
  • mac pecl 安裝php7.1擴展教程
  • PHP7 安裝event擴展的實現(xiàn)方法
  • php使用pecl方式安裝擴展操作示例
  • PHP安裝BCMath擴展的方法
  • PHP擴展類型及安裝方式解析

標簽:廣元 江蘇 萍鄉(xiāng) 棗莊 大理 蚌埠 衢州 衡水

巨人網(wǎng)絡通訊聲明:本文標題《TP5(thinkPHP5)框架mongodb擴展安裝及特殊操作示例》,本文關鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    邓州市| 仁寿县| 时尚| 托克逊县| 肃宁县| 江油市| 金沙县| 紫金县| 江陵县| 新乡县| 同江市| 车险| 武冈市| 宁德市| 日土县| 建平县| 神木县| 兴安盟| 吉首市| 昌宁县| 商都县| 民权县| 汶川县| 嘉峪关市| 东丽区| 农安县| 巴林左旗| 醴陵市| 安福县| 宁武县| 都兰县| 湘潭市| 岢岚县| 西宁市| 会东县| 乐平市| 潞西市| 科技| 荣成市| 娱乐| 明光市|