编程语言
首页 > 编程语言> > PHP Lithium:过滤现有的DocumentSet并获得第一个匹配项

PHP Lithium:过滤现有的DocumentSet并获得第一个匹配项

作者:互联网

我正在从MongoDB检索Lithium中的DocumentSet,但是我不想一次处理所有文档.相反,我希望有一个过滤器,我只能说出这样的内容:

$manyDocuments->giveMeTheOneWhere(array('foo' => 'bar'));

我已经尝试过以这种方式进行操作,但没有成功:

$manyDocuments->find(function($singleDocument){
    return ($singleDocument->foo == 'bar');
});

即使我在闭包内部手动返回true,也始终会返回一个空的DocumentSet.

只是为了增加清晰度:我不是在寻找数据库操作,而是想从一个已经存在的DocumentSet中获取一个.有没有一种花哨的方法可以实现这一目标,或者我需要使用自定义函数遍历集合吗?

解决方法:

在我看来,这很对.那是您使用的确切代码吗?
例如,您使用的是正在传递的内容的“酒吧”值吗?

标签:filter,find,lithium,php
来源: https://codeday.me/bug/20191201/2081478.html