MongoDB可以做什么?
- 大键值对
- 文件
- 全文检索
所以可以用MongoDB来存储和检索文本数据。
PHP连接操作MongoDB推荐使用 MongoDB PHP Library,需要先安装相应版本的mongodb
扩展。
参考资源
Composer安装 MongoDB PHP Library
composer require mongodb/mongodb
PHP连接操作
代码示例(低阶API)
// 拼接连接 URI
$uri = 'mongodb://adminUser:adminPass@192.168.0.128:27017/admin';
$manager = new \MongoDB\Driver\Manager($uri);
//准备写入数据
$document1 = [
'username' => 'john',
'age' => 22,
'email' => 'john_smith@gmail.com'
];
// 驱动预处理数据,这里可以看到 MongoDB 的 _id 是驱动生成的
$bulk = new \MongoDB\Driver\BulkWrite;
$_id1 = $bulk->insert($document1);
$result = $manager->executeBulkWrite('testdb.testtable', $bulk);
// 或者根据实际需要使用下面的代码确保数据写入到大多数节点
// $writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000);
// $result = $manager->executeBulkWrite('testdb.testcollection', $bulk, $writeConcern);
// 按指定ID查询
//$filter = ['_id' => $_id1];
//查询所有
$filter = [];
$query = new \MongoDB\Driver\Query($filter);
$rows = $manager->executeQuery('testdb.testtable', $query);
foreach ($rows as $r) {
print_r($r);
}
高阶API请参阅官方文档。