PHP7操作MongoDB
短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
目录
- 插入数据
- 查询数据
- 更新数据
- 删除数据
PHP7里面使用如下库,操作比较复杂
PHP7连接MongoDB语法如下:
//参数规则: mongodb://账号:密码@IP:端口/数据库
$manager = new MongoDBDriverManager("mongodb://php:123456@localhost:27017/php");
插入数据
//1.连接MongoDB
$manager = new MongoDBDriverManager("mongodb://php:123456@localhost:27017/php");
//2.创建一个BulkWrite对象
$bulk = new MongoDBDriverBulkWrite();
$bulk->insert(["name" => "bashlog", "age" => 26, "email" => "bashlog@foxmail.com"]);
$bulk->insert(["name" => "itbsl", "age" => 12, "email" => "itbsl@foxmail.com"]);
//3.执行插入
$manager->executeBulkWrite("php.stu", $bulk);
查看插入情况
查询数据
//1.连接MongoDB
$manager = new MongoDBDriverManager("mongodb://php:123456@localhost:27017/php");
//2.创建一个Query对象
$filter = ["age" => ["$gt" => 5]];
$options = [
"sort" => ["age" => -1]
];
$query = new MongoDBDriverQuery($filter, $options);
$cursor = $manager->executeQuery("php.stu", $query);
foreach ($cursor as $document) {
var_dump($document);
}
更新数据
//1.规则:mongodb://账号:密码@IP:端口/数据库
$manager = new MongoDBDriverManager("mongodb://php:123456@localhost:27017/php");
//2.创建一个BulkWrite对象
$bulk = new MongoDBDriverBulkWrite();
$bulk->update(
["age" => 12],
["$set" => ["name" => "kitty", "age" => 122]],
["multi" => false, "upsert" => false]
);
$writeConcern = new MongoDBDriverWriteConcern(MongoDBDriverWriteConcern::MAJORITY, 1000);
$result = $manager->executeBulkWrite("php.stu", $bulk, $writeConcern);
删除数据
//1.规则:mongodb://账号:密码@IP:端口/数据库
$manager = new MongoDBDriverManager("mongodb://php:123456@localhost:27017/php");
//2.创建一个BulkWrite对象
$bulk = new MongoDBDriverBulkWrite();
//limit为1时,删除第一条匹配的数据
//limit为0时,删除所有匹配数据
$bulk->delete(["age" => 122], ["limit" => 1]);
$writeConcern = new MongoDBDriverWriteConcern(MongoDBDriverWriteConcern::MAJORITY, 1000);
$result = $manager->executeBulkWrite("php.stu", $bulk, $writeConcern);
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341