CodeIgniter – доступ к переменной $ config

Довольно часто мне нужно получить доступ к переменным $config в представлениях. Я знаю, что могу передать их с контроллера на load->view() . Но сделать это явно излишне.

Есть ли способ или трюк, чтобы получить доступ к переменной $config из представлений CI, не нарушая работу контроллеров с помощью запасного кода?

$this->config->item() работает нормально.

Например, если файл конфигурации содержит $config['foo'] = 'bar'; то $this->config->item('foo') == 'bar'

Кроме того, общая функция config_item() работает почти везде во всем экземпляре CodeIgniter. Контроллеры, модели, представления, библиотеки, помощники, перехватчики, что угодно.

Вы можете сделать что-то вроде этого:

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

$this->config->item('config_var') не работал для моего случая.

Я мог использовать только config_item('config_var'); для эхо-переменных в представлении

Ваш контроллер должен собирать всю информацию из баз данных, конфигов и т. Д. Есть много веских причин придерживаться этого. Одна из веских причин заключается в том, что это позволит вам легко изменить источник этой информации и не вносить никаких изменений в ваши представления.

 echo $this->config->config['ur config file'] 

Если ваш файл конфигурации также появляется на картинке, вы должны получить доступ, как это, например, я включаю app.php в папку конфигурации. У меня есть переменная

 $config['50001'] = "your message" 

Теперь я хочу получить доступ к контроллеру или модели.

Попробуйте выполнить два случая, над которыми нужно работать

Дело 1:

 $msg = $this->config->item('ur config file'); echo $msg['50001']; //out put: "your message"; 

Вариант 2:

  $msg = $this->config->item('50001'); echo $msg; //out put: "your message" 

Всякий раз, когда мне нужно получить доступ к конфигурационным переменным, я стараюсь использовать: $ this-> config-> config ['variable_name'];

Вот как я это сделал. В config.php

 $config['HTML_TITLE'] = "SO TITLE test"; 

В приложениях / view / header.php (предполагая html-код)

 <title><?=$this->config->item("HTML_TITLE");?> </title> 

Пример названия

$config['cricket'] = 'bat'; в файле config.php

$this->config->item('cricket') использует это в представлении