/** * @param EntityFinder $finder * @param array $row * @return mixed */ private static function rowToEntity($finder, $row) { $entityName = $finder->getEntityFqcn(); $entity = new $entityName(); foreach ($finder->getEntityORM()->getFields(false, $finder->getUseEntities()) as $name => $field) { /* @var $field Field */ if ($field->isVisible()) { $value = $row[$field->getColumn(false)]; $setter = 'set' . ucfirst($name); $entity->{$setter}($value); } } return $entity; }