Когда я пытаюсь получить данные из события PRE_SET_DATA, я получаю свой объект с хорошим значением, но я не могу его использовать.
Это мой тестовый код:
$builder->addEventListener( FormEvents::PRE_SET_DATA, function(FormEvent $event) use ($factory){ $data = $event->getData(); print_r($data); } );
Это возвращает длинный текст:
"YOU \ CommercantBundle \ Entity \ LivraisonChoix Object ([id: YOU \ CommercantBundle \ Entity \ LivraisonChoix: private] => 22 …"
Но когда я использую геттер:
$builder->addEventListener( FormEvents::PRE_SET_DATA, function(FormEvent $event) use ($factory){ $data = $event->getData(); print_r($data->getId()); } );
Я получаю сообщение об ошибке:
FatalErrorException: Ошибка: вызов функции-члена getId () для не-объекта
Как я могу получить доступ к данным?
Эта работа отлично подходит для события PRE_BIND.
Мне нужно использовать это условие для работы с геттером:
if ($data instanceof \YOU\CommercantBundle\Entity\LivraisonChoix) { }