Могут ли функции помощника CodeIgniter использовать функции базы данных?

Одна из моих функций CodeIgniter Controller должна вызывать рекурсивную функцию как часть ее функциональности. Вызов функции дросселируется, если я помещаю его внутри класса контроллера, и он не может обращаться к функциям базы данных ($this->db->get()), если я помещаю его вне класса. Помогло ли это хелпер-функции решить эту проблему?

Ответы

Ответ 1

Вы можете получить экземпляр:

 $CI =& get_instance();

После этого вы сможете использовать $CI->db для запросов.

Ответ 2

Если вы хотите использовать $this в библиотеках, помощниках и получить доступ ко всем методам:

    $this->ci =& get_instance();
    $this->ci->load->database();

Вы также можете:

    $this->ci->config->item('languages');

или

    $this->ci->load->library('session');

Ответ 3

 //Select Data:

$this->db->select(‘fieldname seperated by commas’);

$this->db->from(‘table’);

$query = $this->db->get();

$results=$query->result() ;

//Joins:

$this->db->select(‘*’);
$this->db->from(‘table1′);
$this->db->join(‘table2′, ‘table2.id = table1.id’);

$query = $this->db->get();

Мы можем получить это от http://skillrow.com/codeignitor-database-functions/