108 votes

CodeIgniter - accéder à la variable $config dans la vue

Pretty souvent j'ai besoin d'accéder aux variables $config dans les vues. Je sais que je peux les passer du contrôleur à load->view(). Mais cela semble excessif de le faire explicitement.

Y a-t-il une façon ou une astuce d'accéder à la variable $config depuis les vues CI sans perturber les contrôleurs avec un code superflu ?

204voto

Phil Sturgeon Points 19227

$this->config->item() fonctionne bien.

Par exemple, si le fichier de configuration contient $config['foo'] = 'bar'; alors $this->config->item('foo') == 'bar'

0 votes

Belle réponse utile

29voto

Phil Sturgeon Points 19227

De plus, la fonction commune config_item() fonctionne pratiquement partout dans l'instance de CodeIgniter. Contrôleurs, modèles, vues, bibliothèques, aides, hooks, peu importe.

1 votes

Merci pour cela - j'avais du mal à accéder à une valeur de configuration depuis un hook. Pour toute autre personne, cela fonctionne très bien.

1 votes

Mais, config_item() n'a pas la protection contre les collisions qui est disponible dans $this->config->item()

15voto

Shein Alexey Points 447

Vous pouvez faire quelque chose comme ça:

$ci = get_instance(); // instance de CI_Loader
$ci->load->config('email');
echo $ci->config->item('name');

3 votes

En fait, au sein d'une vue $this fait référence à CI_Loader et get_instance() fait référence à CI_Base() comme toujours.

8voto

user1002232 Points 61

$this->config->item('config_var') n'a pas fonctionné pour mon cas.

Je pouvais seulement utiliser le config_item('config_var'); pour afficher les variables dans la vue

2voto

The website-lab Points 124

Chaque fois que j'ai besoin d'accéder à des variables de configuration, j'ai tendance à utiliser: $this->config->config['nom_de_la_variable'];

0 votes

Je ne sais pas pourquoi mais depuis aujourd'hui $this->config->item('var_name'); ne fonctionne plus pour moi.. merci pour le moyen alternatif. je me demandais.. est-ce que cette méthode est légale?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X