Un moyen le plus simple d'accéder aux valeurs de configuration Phalcon dans les vues?
Question
J'ai une section dans les fichiers INI avec des liens sociaux utilisés à l'échelle mondiale, pour ex:
[social]
fb = URL
twitter = URL
linkedin = URL
Quel est le moyen le plus simple d'y accéder ou y a-t-il un meilleur moyen d'organiser ces variables globales?
La solution
Si vous lisez votre fichier de configuration lors de l'initialisation / de l'initialisation de votre application et de la stocker dans le conteneur DI, il sera accessible à travers cela dans chaque partie de votre application.
Exemple - Bootstrap
$di = new \Phalcon\DI\FactoryDefault();
$configFile = ROOT_PATH . '/app/var/config/config.ini';
// Create the new object
$config = new \Phalcon\Config\Adapter\Ini($configFile);
// Store it in the Di container
$di->set('config', $config);
Vous pouvez maintenant accéder à cela dans votre contrôleur comme tel:
echo $this->config->social->twitter;
Vues via Volt:
{{ config.social.twitter }}
Vous pouvez toujours définir cette partie particulière de votre configuration de vos vues via un contrôleur de base.
class ControllerBase()
{
public function initialize()
{
parent::initialize();
$this->view->setVar('social', $this->config->social);
}
}
puis accédez à cette variable à travers votre vue:
{{ social.twitter }}