Assez souvent, j'ai besoin d'accéder à des variables $config
Dans des vues. Je sais que je peux les passer du contrôleur à load->view()
. Mais il semble excessif de le faire explicitement.
Existe-t-il un moyen ou une astuce pour accéder à la variable $config
À partir de vues CI sans perturber les contrôleurs avec du code de secours?
$this->config->item()
fonctionne bien.
Par exemple, si le fichier de configuration contient $config['foo'] = 'bar';
, Alors $this->config->item('foo') == 'bar'
De plus, la fonction commune config_item()
fonctionne un peu partout dans l'occurrence de CodeIgniter. Contrôleurs, modèles, vues, bibliothèques, aides, points d'ancrage, peu importe.
Vous pouvez faire quelque chose comme ça:
$ci = get_instance(); // CI_Loader instance
$ci->load->config('email');
echo $ci->config->item('name');
$this->config->item('config_var')
n'a pas fonctionné pour mon cas.
Je ne pouvais utiliser que la config_item('config_var');
pour faire écho à des variables dans la vue
Votre contrôleur doit collecter toutes les informations des bases de données, des configurations, etc. Il y a de nombreuses bonnes raisons de s'en tenir à cela. Une des bonnes raisons est que cela vous permettra de changer facilement la source de cette information sans avoir à modifier votre point de vue.
Chaque fois que j'ai besoin d'accéder à des variables de configuration, j'ai tendance à utiliser: $ this-> config-> config ['nom_variable'];
echo $this->config->config['ur config file']
Si votre fichier de configuration vient également à l'image, vous devez accéder comme ceci, par exemple, j'inclus un fichier app.php dans le dossier de configuration, j'ai une variable
$config['50001'] = "your message"
Maintenant, je veux accéder à mon contrôleur ou à mon modèle.
Essayez de suivre deux cas, il faut travailler
case1:
$msg = $this->config->item('ur config file');
echo $msg['50001']; //out put: "your message";
case2:
$msg = $this->config->item('50001');
echo $msg; //out put: "your message"
$config['cricket'] = 'bat';
Dans le fichier config.php
$this->config->item('cricket')
utilise ceci en vue