我试试:
$fields = array('name'=>true);
find (array(array(), $fields))
但它不起作用(我什么都没得到),我看不出自己的错误。对不起:(
答案 0 :(得分:2)
如果你使用mongodb / mongodb php composer包,你需要指定 projection 选项:
find([], ['projection' => ['name' => false]])
选项的另一个例子:
find([], ['limit' => 5, projection' => ['name' => false], ...])
答案 1 :(得分:1)
find
的PHP函数不能像那样工作。尝试:
find(array(), array('name'=>1))
(基本上省略了周围的array
)
此处参考的是文档页面:http://php.net/manual/en/mongocollection.find.php
答案 2 :(得分:0)
如果您要在所有记录中查找特定字段,可以执行以下操作:
$cursor = $collection->find();
foreach( $cursor->fields(array('myField' => true )) as $doc ) {
echo "<pre>";
var_dump($doc);
echo "</pre>";
这将为集合中的每个文档仅返回“myFeild”。