Как определить глобальную переменную (значение) в codeIgniter

Я просто не имею в виду, как определить глобальную переменную / константу в CodeIgniter. Позвольте мне объяснить: я создал движок темы, который можно выбрать из текущей входной панели управления пользователя. Этот движок не очень сложный, но простая папка. во всяком случае, то, что я делаю во всем приложении, заключается в том, что я пишу одну строку кода, чтобы получить текущую тему, выбранную пользователем. Я использую одну строку кода для получения имени, а затем сохраняю его в переменной:

$theme_name = $this->theme->get_theme_with_slash(false); 

И затем, я пользователь $ theme_name, как это, чтобы получить правильное представление:

 $this->load->view($theme_name.'result', $data); 

И во всех моих контроллерах, которые загружают представление, я должен повторить этот процесс. То, что мне нужно, это вызвать функцию, которая получает имя_имя и хранить в переменной, а затем использовать переменную / сессию / функцию в приложении. Мой подход в настоящее время является вспомогательной функцией, которая немного менее удобна по сравнению с сеансом / переменной.

Создайте основной контроллер, так как ваш процесс требует логических операций, тогда вам нужен метод для этого.

приложение / ядро / MY_Controller.php

 class MY_Controller Extends CI_Controller { protected $default_theme = 'theme'; public function __construct() { parent::__construct(); } public function get_theme() { //your code for selecting the current theme selected from //the database $theme_from_db = ''; return $theme_from_db == NULL ? $this->default_theme : $theme_from_db; } } 

Ваш контроллер должен продлить MY_Controller

Применение / контроллер / view.php

 class view extends MY_Controller { public function index() { $this->load->view($this->get_theme().'result', $data); } } 

в глобальных воспламенителях кода могут быть определены в

 config->constants.php 

даже вам не нужно его загружать, автоматически автоматически загружать CI.

Я получил это из руководства, и это то, что у меня на вершине моего файла config / config.php: (у меня есть настраиваемая конфигурация, установленная для тестирования PayPal)

 // HOW TO USE - For example if there's $config['foo'] = 'bar'; // in the config // using $this- >config->item('foo') will be 'bar'. // example for my paypal testing: $config['paypaltest']=0; 

http://ellislab.com/codeigniter%20/user-guide/libraries/config.html

и как получить доступ к контроллеру:

 $paypaltest = $this->config->item('paypaltest'); 
 In Codeigniter all constant is defined inside application/config/constant.php. like: define("CONSTANTNAME","value"); Constant degined here is accessible throughout all pages, ie; controllers, models and views