Получить последний выполненный запрос в MySQL с помощью PHP / CodeIgniter - PullRequest
20 голосов
/ 30 июня 2011

Как я могу получить последний запрос, который я запускал в MySQL как в Windows, так и в Linux?

Я работаю с PHP и CodeIgniter.В my_model.php у меня есть:

$query1 = ( ...something... );
$query2 = ( ...something... );
$variables = ( .... something .... );
$this->db->query(" $query1 ... $variables .. $query2", array( $variables, ... ));

Мне нужен последний запрос, выполненный сразу после приведенного выше фрагмента кода.

Может кто-нибудь сказать мне, как я могу получить мой последний запрос?

Ответы [ 3 ]

48 голосов
/ 30 июня 2011

Использование:

$this->db->last_query();

Returns the last query that was run (the query string, not the result). Example:
$str = $this->db->last_query();

// Produces: SELECT * FROM sometable.... 

пример взят из руководства по вспомогательные функции запроса

2 голосов
/ 25 октября 2016

В config / database.php должен быть установлен массив config: 'save_queries' => TRUE, если значение false не работает, функция last_query ().

1 голос
/ 30 июня 2011

В CodeIgniter есть вспомогательная функция $this->db->last_query();.

. Она вернет строку последнего запроса.

Но я думаю, вы можете спросить, как получить результат, вкакой случай вы бы сделали:

$query1 = ( ...something... );
$query2 = ( ...something... );
$variables = ( .... something .... );
$query = $this->db->query(" $query1 ... $variables .. $query2", array( $variables, ... ));

foreach ($query->result() as $row) {
//code goes here
}

Для получения дополнительной информации посмотрите примеры CI .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...