代码之家  ›  专栏  ›  技术社区  ›  Jeffrey04 George

遵循PEAR命名约定的Zend_控制器

  •  1
  • Jeffrey04 George  · 技术社区  · 17 年前

    我正在使用zend框架开发一个web应用程序。我喜欢所有自动加载的工作方式,但是我不喜欢Zend_控制器默认命名控制器的方式。我正在寻找一种方法,使zend_controller能够理解存储在{$app}/controller/User.php中名为controller_User的控制器类。无论如何,我可以用最少的额外代码来完成这项工作吗?

    2 回复  |  直到 17 年前
        1
  •  2
  •   Tim Lytle    17 年前

    这当然不是一个循序渐进的答案,但我相信通过对标准dispatcher类进行子类化,并对处理控制器目录和控制器对象的函数进行一些更改,您可以完成您想要的任务。 ZF Ref Guide - Subclassing Dispatcher

        2
  •  0
  •   Jeffrey04 George    17 年前

    子类调度程序(引用自 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); 
        } 
    } 
    
    推荐文章