中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

MongoDB文檔的創(chuàng)建及刪除(php代碼實例)

注意,本文所有的代碼實例均以php代碼做演示。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名注冊、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、岳塘網(wǎng)站維護、網(wǎng)站推廣。

安裝MongoDB擴展

擴展包安裝地址:https://pecl.php.net/package/mongodb

下載最穩(wěn)定的版本,然后把擴展包上傳到服務(wù)器上。

# 解壓
tar zxf mongodb-1.8.0.tgz 
cd mongodb-1.8.0

# 安裝
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config 
make & make install

# 修改php配置文件php.ini
# 加入一行extension=mongodb

# 測試
php -m | grep mongodb

mongodb擴展教程:https://docs.mongodb.com/php-library/current/reference/

使用phplib

composer require mongodb/mongodb

插入文檔

和Mysql類似,MongoDB插入文檔也能插入單條或多條。下面看插入單條:

$mongo = new MongoDB\\Client();
$collect = $mongo->users->users;
$collect->insertOne(['name'=> 'james', 'age' => 35]);

如果沒有聲明_id字段,該操作會自動為新文檔創(chuàng)建一個_id字段。當(dāng)然,我們也可以手動指定_id的值

$collect->insertOne(['_id' => 1,'name'=> 'james', 'age' => 35]);

該函數(shù)執(zhí)行成功返回 MongoDB\\InsertOneResult object,失敗則會拋出異常。

接下來看如何插入多個文檔:

$collect->insertMany([
    [ 'name'=>'paul', 'age' => 34],
    [ 'name'=>'durant', 'age' => 31],
    [ 'name'=> 'curry', 'age' => 31]
]);

需要注意的是,在批量插入的時候,如果其中有一個文檔插入失敗,后面的就不會繼續(xù)插入,但前面的會插入。

# 第一條會插入成功,第二條時插入失敗,后面的也不會繼續(xù)插入
$collect->insertMany([
    [ 'name'=>'paul', 'age' => 34],
    ['_id'=> 1, 'name'=> 'jeans', 'age' => 1], // _id=1已存在
    [ 'name'=>'durant', 'age' => 31],
    [ 'name'=> 'curry', 'age' => 31]
]);

如想忽略錯誤,繼承插入,則需給該方法添加個選項ordered,設(shè)置為false.

$collect->insertMany([
    [ 'name'=>'jay', 'age' => 34],
    ['_id'=> 1, 'name'=> 'jeans', 'age' => 1], // _id=1已存在
    [ 'name'=>'xtf', 'age' => 31],
],['ordered' => false]);

注意:上述遇到錯誤能夠插入成功,但是該語句會拋出異常。如想忽略錯誤,繼續(xù)程序的執(zhí)行,則需要去捕獲異常。

刪除文檔

注意:刪除是危險操作,不能恢復(fù),不能撤回。

通過查詢語句刪除文檔:

/**
 * 目前有4個name為james的文檔
 */
 
# 刪除一個文檔
$ret = $collect->deleteOne(['name'=>'james']);
printf($ret->getDeletedCount());  // 1

# 刪除滿足條件的所有文檔
$ret = $collect->deleteMany(['name'=>'james']);
printf($ret->getDeletedCount());

刪除所有文檔(其實是整個集合都被刪除了):

$collect->drop();

MongoDB文檔的創(chuàng)建以及刪除,使用起來非常的簡單。

推薦:《MongoDB視頻教程》

分享題目:MongoDB文檔的創(chuàng)建及刪除(php代碼實例)
網(wǎng)頁網(wǎng)址:http://www.rwnh.cn/article2/cgscic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、定制開發(fā)、手機網(wǎng)站建設(shè)品牌網(wǎng)站建設(shè)、ChatGPT微信公眾號

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
年辖:市辖区| 原阳县| 富源县| 五大连池市| 宜兰县| 千阳县| 武邑县| 昂仁县| 南雄市| 柳河县| 会东县| 贵州省| 罗源县| 上杭县| 南华县| 衡阳县| 麻栗坡县| 望都县| 吐鲁番市| 十堰市| 侯马市| 仁怀市| 慈溪市| 娄烦县| 独山县| 大悟县| 奉新县| 甘德县| 黑山县| 牟定县| 阳曲县| 仲巴县| 磐安县| 通海县| 永吉县| 屯留县| 金塔县| 务川| 太湖县| 邵东县| 东明县|