Note that all code examples in this article are demonstrated using PHP code.
##Install the MongoDB extension
# #Extension package installation address: https://pecl.php.net/package/mongodb
Download the most stable version, and then upload the expansion package to the server.
# 解压 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 extension tutorial: https://docs.mongodb.com/php-library/current/reference/
Using phplibcomposer require mongodb/mongodb
Insert documentSimilar to Mysql, MongoDB can also insert single or multiple documents into documents. Let’s look at inserting a single entry:
$mongo = new MongoDB\Client(); $collect = $mongo->users->users; $collect->insertOne(['name'=> 'james', 'age' => 35]);
If the _id field is not declared, this operation will automatically create an _id field for the new document. Of course, we can also manually specify the value of _id
$collect->insertOne(['_id' => 1,'name'=> 'james', 'age' => 35]);
This function returns the MongoDB\InsertOneResult object if successfully executed, and an exception will be thrown if it fails.
Let’s see how to insert multiple documents:
$collect->insertMany([ [ 'name'=>'paul', 'age' => 34], [ 'name'=>'durant', 'age' => 31], [ 'name'=> 'curry', 'age' => 31] ]);
It should be noted that during batch insertion, if one of the documents fails to be inserted, the subsequent ones will not continue to be inserted, but The previous one will be inserted.
# 第一条会插入成功,第二条时插入失败,后面的也不会继续插入 $collect->insertMany([ [ 'name'=>'paul', 'age' => 34], ['_id'=> 1, 'name'=> 'jeans', 'age' => 1], // _id=1已存在 [ 'name'=>'durant', 'age' => 31], [ 'name'=> 'curry', 'age' => 31] ]);
If you want to ignore errors and continue inserting, you need to add an option ordered to the method and set it to false.
$collect->insertMany([ [ 'name'=>'jay', 'age' => 34], ['_id'=> 1, 'name'=> 'jeans', 'age' => 1], // _id=1已存在 [ 'name'=>'xtf', 'age' => 31], ],['ordered' => false]);
Note: You can insert if you encounter the above error Success, but the statement throws an exception. If you want to ignore the error and continue the execution of the program, you need to catch the exception.
Delete document
Note: Deletion is a dangerous operation and cannot be restored or undone.Delete documents through query statements:
/** * 目前有4个name为james的文档 */ # 删除一个文档 $ret = $collect->deleteOne(['name'=>'james']); printf($ret->getDeletedCount()); // 1 # 删除满足条件的所有文档 $ret = $collect->deleteMany(['name'=>'james']); printf($ret->getDeletedCount());
Delete all documents (in fact, the entire collection is deleted):
$collect->drop();
Creation and deletion of MongoDB documents, It's very simple to use.
Recommended: "
The above is the detailed content of Creation and deletion of MongoDB documents (php code example). For more information, please follow other related articles on the PHP Chinese website!