Possible en double:
How could read application.ini on controller using zend frameworkComment récupérer les paramètres du fichier Zend application.ini pendant la session?
application.ini
est un fichier de configuration dans ZF. J'ai là plus de paramètres que les valeurs par défaut que le manuel de ZF écrit. Mais comment puis-je récupérer ces paramètres de mes contrôleurs d'action par exemple? Et où est-il préférable de stocker cette configuration pendant la session?
La classe Bootstrap_Abstract
a méthode getOptions()
qui retourne un tableau simple php de lire le fichier application.ini
:
$app = new Zend_Application(APPLICATION_ENV, '/application.ini');
$config = $app->bootstrap()->getOptions(); // $config is a php array of application.ini
Je voudrais obtenir l'élément le former oop style:
$param = $config[one][two]; // vs.
$param = $config->one->two; // like this
ZF a Zend_Config_Ini
classe qui lit .ini
et renvoie exactement le ArrayObject. Mais je voudrais éviter de lire application.ini
avec Zend_Config_Ini
une fois de plus après que Zend_Application
l'ait déjà lu. Mais les classes Bootstrap
ou Zend_Application
ne fournissent pas de création automatique de ArrayObject à partir de application.ini
.
Et la seconde, où puis-je stocker cette $ config alors? Dans Zend_Registry
?
Zend_Registry::set('config', $config);
Et puis dans mon une commande d'action que je le récupérer:
$config = Zend_Registry::get('config'); // I retrieve config
$param = $config->one->two; // I retrieve parameter from it and use it
Mais il semble un peu inefficace: J'ai une copie de application.ini
dans le Bootstrap
sous la forme d'un tableau habituel php et un copie de la même application.ini
mais sous la forme de ArrayObject dans Zend_Registry
aussi. Et dois faire deux étapes pour obtenir un paramètre de ma config. Comment puis-je résoudre ce problème plus efficacement?
Voir aussi http://akrabat.com/zend-framework/accessing-your-configuration-data-in-application-ini/ – Phil