Довольно часто я должен получить доступ $config
переменные в представлениях. Я знаю, что могу передать их от контроллера до load->view()
. Но это кажется чрезмерным, чтобы сделать это явно.
Есть ли некоторый путь или прием к доступу $config
переменная от CI просматривает, не нарушая контроллеры запасным кодом?
$ this-> config-> item ()
работает нормально.
Например, если файл конфигурации содержит $ config ['foo'] = 'bar';
, то $ this-> config-> item ('foo') == 'bar '
Вы можете сделать что-то вроде этого:
$ci = get_instance(); // CI_Loader instance
$ci->load->config('email');
echo $ci->config->item('name');
Ваш контроллер должен собирать всю информацию из баз данных, конфигураций и т. Д. Есть много веских причин придерживаться этого. Одна из веских причин заключается в том, что это позволит вам довольно легко изменить источник этой информации, и вам не придется вносить какие-либо изменения в свои представления.
Когда мне нужно получить доступ к переменным конфигурации, я обычно использую: $ this-> config-> config ['variable_name'];
Кроме того, общая функция config_item ()
работает практически везде в экземпляре CodeIgniter. Контроллеры, модели, представления, библиотеки, помощники, хуки, что угодно.