我正在使用 zend 框架开发一个网络应用程序。我喜欢所有自动加载的工作方式,但是我不太喜欢 Zend_Controller 默认命名控制器的方式。我正在寻找一种方法来使 zend_controller 能够理解存储在 {$app}/Controller/User.php 中的名为 Controller_User 的控制器类。无论如何我可以用最少的额外代码来做到这一点吗?
Jeffrey04
问问题
180 次
2 回答
2
这当然不是一个循序渐进的答案,但我相信您可以通过继承标准调度程序类,并对处理控制器目录和控制器对象的函数进行一些更改来完成您想要的。ZF 参考指南 - 子类化调度程序
于 2008-12-18T17:27:42.287 回答
0
子类调度程序(引自http://cslai.coolsilon.com/2009/03/28/extending-zend-framework/)
class Coolsilon_Controller_Dispatcher
extends Zend_Controller_Dispatcher_Standard {
public function __construct() {
parent::__construct();
}
public function formatControllerName($unformatted) {
return sprintf(
'Controller_%s', ucfirst($this->_formatName($unformatted))
);
}
public function formatActionName($unformatted) {
$formatted = $this->_formatName($unformatted, true);
return strtolower(substr($formatted, 0, 1)) . substr($formatted, 1);
}
}
于 2009-03-30T07:52:13.833 回答