我刚刚将mongodb更新到版本3.2并将我的php驱动程序更新为latest。这是docs。
他们用这个新驱动程序几乎改变了一切,我认为没有足够的文档。我无法像以前那样找到如何使用php计算,限制和排序数据。
我在mongodb网站上找到sort method,但在php文档和源代码中没有任何内容。
有没有人处理过这个新驱动程序?如何使用php对查询结果进行排序和限制?
答案 0 :(得分:0)
要使用新的mongo php驱动程序,不像只需要安装mongo.so或mongo.dll的旧版本,你需要通过composer获取mongodb / mongodb包:
composer.phar require "mongodb/mongodb=^1.0.0@beta"
然后您可以将此示例用于初始尝试:
<?php
require 'vendor/autoload.php'; // include Composer goodies
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$collection = new MongoDB\Collection($manager, "db_name.collection_name");
$result = $collection->find( [ 'id' => '1', 'name' => 'John' ] );
foreach ($result as $entry)
{
echo $entry->id, ': ', $entry->name, "\n";
}
?>
可以在https://github.com/mongodb/mongo-php-library/blob/master/examples/bulkwrite.php和https://github.com/mongodb/mongo-php-library/blob/master/examples/write.php
中找到更多示例可以在https://github.com/mongodb/mongo-php-library/blob/master/src/Collection.php
中找到计数方法sort和limit是要添加到find()方法的选项:
$options = [
'sort' => ['id' => 1],
'limit' => 5
];
$result = $collection->find( [ 'id' => '1', 'name' => 'John' ], $options );