Symfony - тип возвращаемого значения для сущности Doctrine

DrKey спросил: 27 ноября 2017 в 06:05 в: php

Поскольку с php7 мы уже знаем, что можно объявить тип возвращаемого значения функции. Затем, если эта функция возвращает что-то еще, генерируется исключение.

Теперь я хотел бы использовать эту новую функцию, когда функция в моем проекте Symfony возвращает сущность Doctrine. Поэтому я попытался объявить такую ​​функцию:

public function getEntity(array $conditions, string $entityClass): ?object
{
    // some logic...
    return $queryBuilder->setMaxResults(1)->getQuery()->getOneOrNullResult();
}

Как вы можете видеть, она должна возвращать переменную null или object. Однако, похоже, что object не работает должным образом, потому что я получил исключение:

Ошибка типа: Возвращаемое значениеHelperBundle \ MyHelper :: getEntity () должно быть экземпляр HelperBundle \ object ornull, возвращенный экземпляр AppBundle \ Entity \ MyEntity

Я на самом деле не уверен, что означает это сообщение: должен ли возвращаемый объект наследоваться от класса, расположенного в HelperBundle или что?

Но, вообще говоря, есть ли способ объявить тип возврата для универсальной сущности Doctrine без использования пользовательских базовых классов или интерфейсов?

0 ответов