すべてのモジュール、特にそれらのコントローラーで使用される、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関数の両方で)配置したいと思います。