protected function getEntities($key) { if (!isset($this->relationships[$key])) { return false; } $relationship = $this->relationships[$key]; if (!isset($this->managers[$relationship['manager']])) { $this->managers[$relationship['manager']] = $this->factory->get($key); } $manager = $this->managers[$relationship['manager']]; /* @var $manager ManagerAbstract */ $query = new QueryBuilder($manager->table(), $this->factory::connection(), $relationship['conditions']); $original_params = $query->params(); $params = array(); foreach ($original_params as $param) { if (stripos($param, 'entity.' === 0)) { $param = $this->entity[substr($param, 7)]; } $params[] = $param; } if ($relationship['relation'] == 'HasOne') { $this->entities[$key] = $manager->fetch($query, $params); } else { $this->entities[$key] = $manager->fetchAll($query, $params); } return $this->entities[$key]; }