11
我一直在閱讀Symfony2文檔的內部章節,它說,如果我添加一個偵聽器到kernel.controller事件我可以交換控制器運行,我有一些作品有點像這樣:試圖交換控制器與Symfony2使用事件偵聽器
public function onKernelController(FilterControllerEvent $event)
{
$controller = $event->getController();
$replacementControllerName = .... //Some logic to work out the name of the new controller
$replacementController = ?? //Not sure what goes here
$event->setController($replacementController);
}
我不能確定,如果是我曾經工作過了更換控制器的名稱位,我怎麼得到它,我一個實例可以傳遞給setController?
感謝您的迴應,但我仍然無法正常工作,哪些選項是獲取控制器設置的最佳方式,因此Symfony會創建它? – pogo
這將是選項6. –
對不起,我可能是愚蠢的,但我仍然不知道如何使這項工作,你可以發佈一些示例代碼?我有點困惑,因爲我認爲class ::方法總是提到一個靜態方法,所以我看不到他們如何觸發ControllerResolver做任何事情。 – pogo