(PHP 5, PHP 7, PHP 8)
mysqli::$warning_count -- mysqli_warning_count — Возвращает количество предупреждений из последнего запроса заданного подключения
Объектно-ориентированный стиль
Процедурный стиль
Возвращает количество предупреждений из последнего запроса.
Замечание:
Для получения самих предупреждений можно использовать SQL-команду
SHOW WARNINGS [limit row_count]
.
mysql
Только для процедурного стиля: объект mysqli, который вернула функция mysqli_connect() или функция mysqli_init().
Количество предупреждений или ноль, если таковых нет.
Пример #1 Пример использования $mysqli->warning_count
Объектно-ориентированный стиль
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* проверка соединения */
if (mysqli_connect_errno()) {
printf("Не удалось подключиться: %s\n", mysqli_connect_error());
exit();
}
$mysqli->query("CREATE TABLE myCity LIKE City");
/* знаменитый город в Уэльсе */
$query = "INSERT INTO myCity (CountryCode, Name) VALUES('GBR',
'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";
$mysqli->query($query);
if ($mysqli->warning_count) {
if ($result = $mysqli->query("SHOW WARNINGS")) {
$row = $result->fetch_row();
printf("%s (%d): %s\n", $row[0], $row[1], $row[2]);
$result->close();
}
}
/* закрываем соединение */
$mysqli->close();
?>
Процедурный стиль
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* проверка соединения */
if (mysqli_connect_errno()) {
printf("Не удалось подключиться: %s\n", mysqli_connect_error());
exit();
}
mysqli_query($link, "CREATE TABLE myCity LIKE City");
/* знаменитый город в Уэльсе */
$query = "INSERT INTO myCity (CountryCode, Name) VALUES('GBR',
'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";
mysqli_query($link, $query);
if (mysqli_warning_count($link)) {
if ($result = mysqli_query($link, "SHOW WARNINGS")) {
$row = mysqli_fetch_row($result);
printf("%s (%d): %s\n", $row[0], $row[1], $row[2]);
mysqli_free_result($result);
}
}
/* закрываем соединение */
mysqli_close($link);
?>
Результат выполнения приведённых примеров:
Warning (1264): Data truncated for column 'Name' at row 1