MongoDB驱动算是比较新的编写方式了,所以整理下增删查改的代码示例:
<?php
#连接
$mongodb = 'mongodb://127.0.0.1:27017/admin connectTimeoutMS=1000';
$manager = new MongoDBDriverManager($mongodb);
$dbName = "testdb";
$collectionName = "test";
$dbInfo = "{$dbName}.{$collectionName}";#testdb.test
#增或者更新
$data['_id'] = "abc";
$data['other'] = "xxx";
$options = ["upsert"=>true];#存在则更新,否则插入
$bulk = new MongoDBDriverBulkWrite($options);
$bulk->update(["_id"=>$data['_id']], $data, $options);
$writeConcern = new MongoDBDriverWriteConcern(MongoDBDriverWriteConcern::MAJORITY);
$res = $manager->executeBulkWrite($dbInfo, $bulk, $writeConcern);
$m = $res->getModifiedCount();
$u = $res->getUpsertedCount();
$res = $m>$u $m:$u;
if($res>0){
#更新或插入成功
}
#删除
$data['_id'] = "abc";
$bulk = new MongoDBDriverBulkWrite();
$bulk->delete(["_id"=>$data['_id']]);
$writeConcern = new MongoDBDriverWriteConcern(MongoDBDriverWriteConcern::MAJORITY);
$res = $manager->executeBulkWrite($dbInfo, $bulk, $writeConcern);
#查询
$query = new MongoDBDriverQuery(['age' => 24], ['sort' => ['age' => 1]]);
$cursor = $manager->executeQuery($dbInfo, $query);
$data = [];
foreach($cursor as $doc) {
$data[] = $doc;
}
相关参考:https://www.php.cn/php-weizijiaocheng-405061.html
如本文对您有用,您的捐赠和留言将是我最好的支持~
如您愿意,请向更多志同道合的朋友们推荐本站,谢谢。
请尊重他人劳动成果。
转载请务必附上原文链接,我将感激不尽。
有什么问题可以 留言或QQ联系我
留言