Я новичок в создании кода.CodeIgniter Basic
Я хочу знать использование $ CI = & get_instance();
это использование для регистрации ошибок или глобальной конфигурации.
благодарит заранее.
Я новичок в создании кода.CodeIgniter Basic
Я хочу знать использование $ CI = & get_instance();
это использование для регистрации ошибок или глобальной конфигурации.
благодарит заранее.
От CodeIgniter руководства:
$ CI = & get_instance();
После того, как вы присвоили объект в переменной, вы будете использовать эту переменную вместо $ это:
$CI =&get_instance();
$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url'); etc.
Примечание. Вы заметите, что вышеФункцияget_instance() в настоящее время передается по ссылке:
$CI =& get_instance();
Это очень важно. Присвоение по заданию позволяет использовать исходный объект CodeIgniter, а не , чем создать его копию.
Кроме того, обратите внимание: Если вы работаете PHP 4 это, как правило, лучше избегать призывающей get_instance() внутри ваших класс конструкторов. PHP 4 имеет проблема с ссылкой на объект CI super в конструкторах приложений , так как объекты не существуют до тех пор, пока класс не будет полностью создан.
Ссылка: http://codeigniter.com/user_guide/general/creating_libraries.html
Только класс, который расширяет CI_Controller, модель, View можно использовать
$this->load->library('something');
$this->load->helper('something');//etc
пользовательского класса не может использовать код выше. Чтобы использовать перечисленные выше функции в пользовательском классе, ваши должны использовать
$CI=&get instance();
$CI->load->library('something');
$CI->load->helper('something');
, например, в пользовательском классе
// this following code will not work
Class Car
{
$this->load->library('something');
$this->load->helper('something');
}
//this will work
Class Car
{
$CI=&get_instance();
$CI->load->library('something');
$CI->load->helper('something');
}
// Here $CI is a variable.
спасибо это мне очень помогает. Большое спасибо –