如何消除Zend Framework控制器文件名中“Controller”后缀的需要?在创建控制器时继续输入后缀是很烦人的,同时文件已经在控制器文件夹中,所以它是多余的。
例如,默认情况下,站点上的主页会转到“controllers / IndexController.php”。如果我想要它转到“controllers / Index.php”怎么办?
答案 0 :(得分:5)
类名的后一部分硬编码到Zend_Controller_Dispatcher_Abstract::formatControllerName()
中的“Controller”。
要更改它,您必须创建一个实现Zend_Controller_Dispatcher_Interface
的自定义Dispatcher类并覆盖formatControllerName()
函数。然后在调用$frontController->setDispatcher()
之前,使用dispatch()
将新调度程序的实例分配给引导程序脚本中的前端控制器。
为什么还需要更改控制器类名的格式?它不像PHP文件出现在任何地方的请求URL中。
听起来像你bikeshedding。