/** * @param array $criteriaArray * @param Criteria $criteria * @return Criteria */ public function buildFromArray(array $criteriaArray, Criteria $criteria) { foreach ($criteriaArray as $key => $value) { list($keyName, $className) = $this->getKeyNameAndCriterionClassName($key); $criterion = new $className($keyName, $value); if ($criteria->canAdd($criterion)) { $criteria = $criteria->add($criterion); } } return $criteria; }