Я пытаюсь внедрить один класс (простой класс PHP) в другой (аннотированный класс ORM\Entity
) и получаю сообщение об ошибке, но не могу найти источник.Глядя на код, я чувствую, что все делаю правильно, но не могу решить эту ошибку.
Вот соответствующий код:
Во-первых, класс ORM\Entity
, куда я хочу ввестикласс ErrorConstants
:
use Base\Model\Constants\ErrorConstants;
/**
* @ORM\Entity ...
*/
class CwPackagePeriod extends AbstractRestEntity
public $errors;
public function __construct()
{
parent::__construct();
$this->errors = new ErrorConstants();
}
}
Класс ErrorConstants
- это простой класс, который содержит список констант ошибок:
class ErrorConstants
{
public const ERR_MISSING = 'Record could not be found.';
}
Ошибка возникает при попытке выброситьисключение в классе CwPackagePeriod
, если целое значение выходит за пределы в сеттере:
throw new InvalidOrMissingParameterException(
sprintf($this->errors::ERR_MISSING)
);
Ошибка состоит в следующем:
Имя класса должно быть допустимым объектомили строка
Класс AbstractRestEntity
не содержит никакой ссылки на ErrorConstants
, и когда я добавляю туда ссылку, ничего не меняется в отношении ошибки.Что я делаю не так?