注册

PHP对MongoDB[NoSQL]数据库的操作

下面我给您详细讲解PHP对MongoDB[NoSQL]数据库的操作的完整攻略,并包含两条示例来说明。

环境搭建

首先需要安装mongodb的驱动程序,可以通过pecl进行安装。如果未安装pecl,需要先进行pecl的安装。

安装pecl

yum -y install php-pecl-mongodb

安装完后通过phpinfo()确认扩展已安装。

配置MongoDB服务

MongoDB服务器需要加密验证,需要在使用用户名和密码之前先配置用户名和密码等信息。

启动命令:

mongod --dbpath /data/db --logpath /data/logs/mongod.log --fork --auth

在mongodb的配置文件中开启验证模式:

security:
  authorization: enabled

在此过程中,需要先对MongoDB进行一定的了解,这里就不做过多的介绍了。

连接MongoDB

连接MongoDB,需要使用mongoDB对应的扩展。


插入数据

操作MongoDB,需要用到MongoDB\Driver\BulkWrite类。示例如下:

 '1', 'name' => 'Tom', 'age' => 18];
$doc2 = ['_id' => '2', 'name' => 'Jerry', 'age' => 20];
$doc3 = ['_id' => '3', 'name' => 'Lucy', 'age' => 21];

$bulk->insert($doc1);
$bulk->insert($doc2);
$bulk->insert($doc3);

$manager->executeBulkWrite('db.collection', $bulk);
?>

查询数据

查询MongoDB的操作涉及到过滤器、排序和投影。示例如下:

 ['$gte' => 20]];
$options = [
    'sort' => ['age' => 1],
    'projection' => ['_id' => 0, 'name' => 1],
];

$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery('db.collection', $query);
foreach ($cursor as $document) {
    var_dump($document);
}
?>

以上就是PHP对MongoDB数据库的操作完整攻略,并附带两个示例说明。