CodeIgniter-доступ к переменной $config в представлении


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

есть ли какой-то способ или хитрость, чтобы открыть $config переменная из представлений CI без тревожные контроллеры с запасным кодом?

9 86

9 ответов:

$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'] 

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

$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['cricket'] = 'bat'; в config.файл php

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

вот как я это сделал. В конфигурации.php

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

в приложения/вид/заголовок.php (предполагая html-код)

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

Example of Title