您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)怎么在thinkPHP5框架中安裝mongodb擴(kuò)展,文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
首先安裝官方的mongodb擴(kuò)展:
http://pecl.php.net/package/mongodb
找到對(duì)應(yīng)的php版本的擴(kuò)展
然后,配置應(yīng)用的數(shù)據(jù)庫(kù)配置文件database.php的type參數(shù)為:
'type' => '\think\mongo\Connection',
即可正常使用MongoDb,例如:
使用最新mongodb擴(kuò)展
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默認(rèn)的主鍵是_id并且是一個(gè)ObjectID對(duì)象,如果需要和mysql一樣使用id作為主鍵,可以如下參數(shù):
// 強(qiáng)制把_id轉(zhuǎn)換為id 'pk_convert_id' => true,
tp5 Mongodb特殊操作
Push操作
添加數(shù)據(jù)
public function add(){ $this->data = [ '作者' => 'tuzi', '年齡' => '22', '標(biāo)題' => '防塔與補(bǔ)兵', '評(píng)論' => [ [ '序號(hào)' => '001', '內(nèi)容' => '五殺' ] ] ]; $res = Db::table('document')->insert($this->data); if($res){ echo "success"; }else{ echo "error"; } }
結(jié)果
array(1) {
[0] => array(5) {
["_id"] => object(MongoDB\BSON\ObjectId)#12 (1) {
["oid"] => string(24) "5a51f73083869e4b65549c36"
}
["作者"] => string(4) "tuzi"
["年齡"] => string(2) "22"
["標(biāo)題"] => string(15) "防塔與補(bǔ)兵"
["評(píng)論"] => array(1) {
[0] => array(2) {
["序號(hào)"] => string(3) "001"
["內(nèi)容"] => string(6) "五殺"
}
}
}
}
利用push更新數(shù)據(jù)
public function update() { $update_data['評(píng)論'] = [ '$push', [ '序號(hào)' => '002', '內(nèi)容' => '三殺' ] ]; $update_res = Db::table('document')->where('標(biāo)題','防塔與補(bǔ)兵')->update($update_data); if($update_res){ echo "success"; }else{ echo "error"; } }
結(jié)果
array(1) {
[0] => array(5) {
["_id"] => object(MongoDB\BSON\ObjectId)#12 (1) {
["oid"] => string(24) "5a51f73083869e4b65549c36"
}
["作者"] => string(4) "tuzi"
["年齡"] => string(2) "22"
["標(biāo)題"] => string(15) "防塔與補(bǔ)兵"
["評(píng)論"] => array(2) {
[0] => array(2) {
["序號(hào)"] => string(3) "001"
["內(nèi)容"] => string(6) "五殺"
}
[1] => array(2) {
["序號(hào)"] => string(3) "002"
["內(nèi)容"] => string(6) "三殺"
}
}
}
}
上述就是小編為大家分享的怎么在thinkPHP5框架中安裝mongodb擴(kuò)展了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。