CodeIgniter. Как посмотреть выполненные sql-запросы

Очень просто! :)

Если быть кратким, то:
//выполненные запросы:
print_r($this->db->queries);
//время выполнения запросов:
print_r($this->db->query_times);

А далее можно использовать эти массивы как необходимо. Сделать временные print_r() для отладки или оформить красивый вывод результатов в админ. части сайта.
Обратите внимание, что данные массивы будут пусты, если
$this->db->save_queries = FALSE; //(по умолчанию TRUE)

Информацию почерпнул из файла codeigniter\system\database\DB_driver.php
В файле описывается класс драйвера базы данных CI_DB_driver. В этом классе и объявлены, интересующие нас переменные (массивы).
class CI_DB_driver {
   …
   var $queries = array();
   var $query_times = array();
   …
}

Далее идет наследование (или расширение) это класса другими классами CI_DB и CI_DB_active_record, CI_DB_mysql_driver…

А в файле DB.php происходит создание объекта класса.
$driver = 'CI_DB_'.$params['dbdriver'].'_driver';
$DB =& new $driver($params);

Если вы работаете с MySQL, то будет создан объект класса CI_DB_mysql_driver.
Теги:
CodeIgniter, sql-запросы
Добавлено: 11 Февраля 2015 21:13:21 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...