Чтобы перехватить эту ошибку, вы можете поймать выброшенное исключение. В этом случае вы должны перехватить InvalidArgumentException.
try{
$nonExistentManager = $this->getDoctrine()->getManager('foo');
} catch (\InvalidArgumentException $e) {
//The foo manager does not exist, do something
//Redirect ?
}
Если вы ищете список доступных менеджеров, вы можете использовать метод getManagers
. Это вернет список массивов менеджеров. Ключами этого массива являются доступные имена:
$managers = $this->getDoctrine()->getManagers();
dd($managers);
этот код возвращает что-то вроде этого:
array:1 [▼
"default" => Doctrine\ORM\EntityManager {#320 …11},
"foo" => Doctrine\ORM\EntityManager {#321 …12},
"bar" => Doctrine\ORM\EntityManager {#322 …12}
]