CodeIgniter User Guide Version 2.0.0


Вызов пользовательских функций

$this->db->call_function();

Эта функция позволяет вам вызвать платформонезависимые функции базы данных PHP, которые не включены в CodeIgniter. Например, давайте вызовем функцию mysql_get_client_info(), которая не поддерживается нативно CodeIgniter. Вы можете сделать что-то вроде этого:

$this->db->call_function('get_client_info');

Вы должны передать первым параметром имя функции без префикса mysql_. Префикс добавляется автоматически, в зависимости от того, какой используется драйвер базы данных. Это позволяет вам запускать одни и те же функции на различных платформах БД. Очевидно, не все функции идентичны в различных платформах, поэтому есть ограничения в полезности функций c точки зрения переносимости.

Любые требуемые параметры вы можете передать вторым параметром функции вызова.

$this->db->call_function('some_function', $param1, $param2, etc..);

Часто вам нужно будет сопоставлять ID соединения с БД или ID результата. ID соединения доступен как:

$this->db->conn_id;

ID результата доступен через объект результата, например так:

$query = $this->db->query("SOME QUERY");

$query->result_id;