application.iniZF の構成ファイルです。ZF のマニュアルに書かれているデフォルト以外にも、いくつかの設定があります。しかし、たとえばアクション コントローラからこれらのパラメータを取得するにはどうすればよいでしょうか? セッション中にこの構成をどこに保存するのが良いですか?
このBootstrap_Abstractクラスには、読み取りファイルgetOptions()の単純な php 配列を返すメソッドがあります。application.ini
$app = new Zend_Application(APPLICATION_ENV, '/application.ini');
$config = $app->bootstrap()->getOptions(); // $config is a php array of application.ini
そして、要素をおっとスタイルで取得したいと思います:
$param = $config[one][two]; // vs.
$param = $config->one->two; // like this
ZF にはZend_Config_Ini、 を読み取り.ini、正確に ArrayObject を返すクラスがあります。しかし、とにかく読んだ後にapplication.iniもう一度Zend_Config_Ini読むことは避けたいと思います。Zend_Applicationしかし、BootstrapまたはZend_Applicationクラスは、からの ArrayObject の自動作成を提供しませんapplication.ini。
次に、この $config をどこに保存すればよいでしょうか? でZend_Registry?
Zend_Registry::set('config', $config);
そして、いくつかのアクションコントローラーでそれを取得します:
$config = Zend_Registry::get('config'); // I retrieve config
$param = $config->one->two; // I retrieve parameter from it and use it
しかし、それは少し効率が悪いようです:通常の php 配列の形式で のコピーを 1 つと、同じものapplication.iniのArrayObject の形式でも 1 つのコピーを持っています。私の設定からパラメータを取得するには、2 つの手順を実行する必要があります。この問題をより効率的に解決するにはどうすればよいですか?Bootstrapapplication.iniZend_Registry