将公共变量和函数放入 Zend 框架 2(带有原则)的最佳/标准方法是什么,以便在所有模块中使用,特别是它们的控制器。
我在某处读到我们的控制器应该扩展另一个控制器(如 AppCommonController),而后者又扩展了 AbstractActionController。AppCommonController 然后将定义我们可以在任何扩展它的控制器中访问的公共变量和函数。
有没有更好/标准的方法来做到这一点?
- -更新 - -
例如,我想在我的大多数控制器(跨不同模块)中检查我的站点的当前模式(测试或实时),并因此希望在操作中执行必要的操作。
我在一些控制器中写了以下内容:
private $__currentMode = '';
public function __construct()
{
//following will be set to Live or Test depending on a session value
$this->setCurrentMode('Live');
}
public function setCurrentMode($mode)
{
$this->__currentMode = $mode;
}
public function getCurrentMode()
{
return $this->__currentMode;
}
我认为将上述代码放在我需要检查当前模式的所有控制器中是一个坏主意。
所以我想把它(currentMode 属性和 getter/setter 函数)放在某个地方,我可以在任何需要的地方在所有控制器中访问它们。