/**
* @param $key
* @param $value
* @param $collection
* @return array | 'MongoDB'Driver'Cursor
*/
static function simpleSelect($key, $value, $collection)
{
$con = 'Core'Model'Mongo::getConnect();
$query = new 'MongoDB'Driver'Query(
array(
$key => $value
)
);
return $con->executeQuery('Core'Helper::getDb()['mongodb']['db'] . '.' . $collection, $query);
}
我为mongodb驱动程序开发类。我遇到了麻烦,例如,如何为mongoDB调用函数sort
https://docs.mongodb.com/manual/reference/method/cursor.sort/在本文档中,我阅读了cursor
有sort
,但在php中'MongoDB'Driver'Cursor
类没有sort
方法。。。
我通过修改我的代码解决了这个问题
/**
* @param $key
* @param $value
* @param $collection
* @return array | 'MongoDB'Driver'Cursor
*/
static function simpleSelect($key, $value, $collection)
{
$con = 'Core'Model'Mongo::getConnect();
$query = new 'MongoDB'Driver'Query(
array(
$key => $value
),
array('sort' => array('time' => -1))
);
return $con->executeQuery('Core'Helper::getDb()['mongodb']['db'] . '.' . $collection, $query);
}
方法查询有2个参数,选项这是数组中可以包含排序、排序等选项的集合。但这并不是完成代码,因为我想为集合排序和其他选项创建新的方法。
在PHP中,用于对Mongodb集合进行排序的语法是
// Sort on field x, ascending
$cursor->sort(array('x' => 1));
您的代码可以修改为:-
static function simpleSelect($key, $value, $collection)
{
$con = 'Core'Model'Mongo::getConnect();
$query = new 'MongoDB'Driver'Query(
array(
$key => $value
)
);
$cursor = $con->executeQuery('Core'Helper::getDb()['mongodb']['db'] . '.' . $collection, $query);
$cursor->sort(array('x' => 1));
return $cursor;
}