/** * @param AttorneyAbstract $attorney * @return ArrayCollection */ public function findAttorney(AttorneyAbstract $attorney) { $this->initAttorneys(); return $this->attorneys->filter(function ($item) use($attorney) { if ('' !== $attorney->getDobString()) { return $item->getTitle() === $attorney->getTitle() && $item->getFirstname() === $attorney->getFirstname() && $item->getMiddleName() === $attorney->getMiddlename() && $item->getSurname() === $attorney->getSurname() && $item->getDobString() === $attorney->getDobString(); } else { return $item->getTitle() === $attorney->getTitle() && $item->getFirstname() === $attorney->getFirstname() && $item->getMiddleName() === $attorney->getMiddlename() && $item->getSurname() === $attorney->getSurname(); } }); }