我在这里有阵列。
这来自php结果。
$result1 = $mo->find(
array(
'username' => 'BLABLA',
'stream' => array('$exists' => true)
)
);
foreach ($result1 as $obj) {
print_r($obj);
}
我如何对[stream]子进行排序并将其限制为1个结果?以及如何找到[id_stream]孩子?
谢谢
答案 0 :(得分:0)
限制为单个文档
使用limit(1)
:
$ result1 = $ mo-> find(array( 'username'=> 'BLABLA', 'stream'=> array('$ exists'=> true))) - > limit(1);
或
findOne
$ result1 = $ mo-> findOne(array( 'username'=> 'BLABLA', 'stream'=> array('$ exists'=> true)));
对孩子进行分类。
您还需要在最后添加->sort(array("stream.time" => -1));
我见过了pastebin,我想你想按日期订购。
最终代码:
$result1 = $mo->findOne( array(
'username' => 'BLABLA',
'stream' => array('$exists' => true)))->sort(array("stream.time" => -1));;
从我所知道的限制到数组的单个值,你需要一个循环
你需要添加(在find中,在主数组之后):find(.... , array('streams' => array('$slice' => 1)));
答案 1 :(得分:0)