Search code examples
ormdoctrine-ormlazy-loadingarraycollection

Doctrine 2 ArrayCollection filter method


Can I filter out results from an arrayCollection in Doctrine 2 while using lazy loading? For example,

// users = ArrayCollection with User entities containing an "active" property
$customer->users->filter('active' => TRUE)->first()

It's unclear for me how the filter method is actually used.


Solution

  • The Boris Guéry answer's at this post, may help you: Doctrine 2, query inside entities

    $idsToFilter = array(1,2,3,4);
    
    $member->getComments()->filter(
        function($entry) use ($idsToFilter) {
           return in_array($entry->getId(), $idsToFilter);
        }
    );