PHP 8.3.4 Released!

mysqli::$info

mysqli_info

(PHP 5, PHP 7, PHP 8)

mysqli::$info -- mysqli_info Извлекает информацию о последнем выполненном запросе

Описание

Объектно-ориентированный стиль

Процедурный стиль

mysqli_info(mysqli $mysql): ?string

Функция mysqli_info() возвращает строку с информацией о последнем выполненном запросе к базе данных. Описание строки приведено ниже:

Возможные возвращаемые значения mysqli_info
Тип запроса Пример результирующей строки
INSERT INTO...SELECT... Records: 100 Duplicates: 0 Warnings: 0
INSERT INTO...VALUES (...),(...),(...) Records: 3 Duplicates: 0 Warnings: 0
LOAD DATA INFILE ... Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
ALTER TABLE ... Records: 3 Duplicates: 0 Warnings: 0
UPDATE ... Rows matched: 40 Changed: 40 Warnings: 0

Замечание:

Запросы, не попадающие в приведённый список, не поддерживаются. В таких ситуациях mysqli_info() вернёт пустую строку.

Список параметров

mysql

Только для процедурного стиля: объект mysqli, который вернула функция mysqli_connect() или функция mysqli_init().

Возвращаемые значения

Строка символов представляющая дополнительную информацию о последнем запущенном запросе.

Примеры

Пример #1 Пример использования $mysqli->info

Объектно-ориентированный стиль

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

$mysqli->query("CREATE TEMPORARY TABLE t1 LIKE City");

/* INSERT INTO ... SELECT */
$mysqli->query("INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");
printf("%s\n", $mysqli->info);
?>

Процедурный стиль

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

mysqli_query($link, "CREATE TEMPORARY TABLE t1 LIKE City");

/* INSERT INTO ... SELECT */
mysqli_query($link, "INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");
printf("%s\n", mysqli_info($link));
?>

Результат выполнения приведённых примеров:

Records: 150  Duplicates: 0  Warnings: 0

Смотрите также

  • mysqli_affected_rows() - Получает число строк, затронутых предыдущей операцией MySQL
  • mysqli_warning_count() - Возвращает количество предупреждений из последнего запроса заданного подключения
  • mysqli_num_rows() - Получает количество строк в наборе результатов

add a note

User Contributed Notes 2 notes

up
26
user at biglake dot com
13 years ago
Might save someone some time...

<?php
$prototype
='Rows matched: 0 Changed: 1 Warnings: 2';
list(
$matched, $changed, $warnings) = sscanf($prototype, "Rows matched: %d Changed: %d Warnings: %d");
?>
up
0
vzverev [at] newmail.ru (Vasiliy Zverev)
6 years ago
If inserted just one row, mysqli_info() returns empty string which might be confusing, but mysqli_affected_rows() returns 1 in this case.
To Top