我以这种方式过滤了一个ArrayCollection:
$result = $eCollection->getElements()->filter(
function($rObject) use ($id) {
return in_array($rObject->getEid(), array($id));
}
);
但该集合还有一个名为type的属性,一个名为date。
我如何按ID和TYPE过滤它,或者在值之间按DATE过滤?
答案 0 :(得分:0)
我认为你应该看看LastChangedBy
。您可以在doctrine 2文档中的 8.8. Filtering Collections 一章中阅读所有相关标准。
使用标准的优点是您可以添加各种约束,它将在数据库级别执行。这意味着您不会不必要地加载您不希望拥有的集合中的任何元素。
ItemName CreateDate Created By Name CreatedBy LastChanged Last Changed By Name LastChangedBy
Item A 12/01/2015 Smith, John 0001 12/03/2015 Smith, John 0001
Item B 12/02/2015 Smith, John 0001 12/04/2015 Smith, John 0001
Item C 12/02/2015 Doe, Jane 1002 12/05/2015 Doe, Jane 0001