ブートストラップに次を追加します。
protected function _initConfig()
{
$config = new Zend_Config_Ini(APPLICATION_PATH.'/configs/config.ini');
Zend_Registry::set('config', $config);
return $config;
}
config.ini を任意のファイル名に置き換えます。
その後、アプリケーション リソースとして、またはレジストリ ( Zend_Registry::get('config')
) を介して、アプリケーション内の任意の場所でこの構成オブジェクトにアクセスできます。したがって、例から SiteName を取得するには:
$config = Zend_Registry::get('config');
echo $config->General->SiteName;
データベース設定などについては、ブートストラップでこれらにアクセスして、他のリソースをセットアップするために使用できるようにする必要があります。application.ini にデータベース設定を含めようとしないことをお勧めします。代わりに、別のブートストラップ メソッドを追加して DB リソースを手動でセットアップします。
protected function _initDb()
{
$this->bootstrap('config');
$config = $this->getResource('config');
$db = Zend_Db::factory('Pdo_Mysql', array(
'host' => $config->Database->Server,
'username' => $config->Database->Username,
'password' => $config->Database->Password,
'dbname' => $config->Database->Dbname
));
return $db;
}
これをもう少し説明すると$this->bootstrap('config');
、構成リソースが最初にロードされるようになります。$this->getResource('config');
構成リソース (_initConfig() メソッドによって作成されたもの) を返します。次に、このオブジェクトのデータを使用して DB 接続を作成します。