Перейти к содержимому

Список ошибок

В этой статье мы рассмотрим функцию mysqli\_error\_list() в PHP, которая используется для получения массива ошибок, возникших во время последней операции MySQLi. Мы предоставим обзор функции, принцип её работы и примеры использования.

Введение в функцию mysqli_error_list()

Функция mysqli\_error\_list() — это встроенная функция PHP, предназначенная для получения массива ошибок, возникших во время последней операции MySQLi. Она полезна, когда необходимо обработать несколько ошибок в коде MySQLi и предпринять соответствующие действия в зависимости от возникших ошибок.

Как использовать функцию mysqli_error_list()

Использовать функцию mysqli\_error\_list() очень просто. Достаточно вызвать её для валидного объекта MySQLi. Вот пример:

Как использовать функцию mysqli_error_list()?

php
<?php
$mysqli = mysqli_connect("localhost", "username", "password", "database");

$query = "SELECT * FROM my_table";
$result = mysqli_query($mysqli, $query);

if (!$result) {
    $error_list = mysqli_error_list($mysqli);
    foreach ($error_list as $error) {
        echo "Failed to execute query. Error message: " . $error['error'] . "\n";
    }
    exit();
}

mysqli_close($mysqli);
?>

В этом примере мы подключаемся к базе данных MySQL, выполняем запрос и проверяем наличие ошибок. Если mysqli_query() завершается неудачей, mysqli_error_list() извлекает детали ошибок. Мы перебираем возвращённый массив, чтобы вывести сообщение об каждой ошибке перед завершением скрипта.

Расширенное использование

Функцию mysqli\_error\_list() можно также использовать в более сложных сценариях. Например, с её помощью можно получить код ошибки и код ошибки SQLSTATE для каждой ошибки. Вот пример:

Расширенное использование PHP mysqli_error_list()

php
<?php
$mysqli = mysqli_connect("localhost", "username", "password", "database");

$query = "SELECT * FROM my_table";
$result = mysqli_query($mysqli, $query);

if (!$result) {
    $error_list = mysqli_error_list($mysqli);
    foreach ($error_list as $error) {
        echo "Failed to execute query. Error message: " . $error['error'] . "\n";
        echo "Error code: " . $error['errno'] . "\n";
        echo "SQLSTATE error code: " . $error['sqlstate'] . "\n";
    }
    exit();
}

mysqli_close($mysqli);
?>

Этот пример расширяет предыдущий, дополнительно выводя числовой код ошибки (errno) и код SQLSTATE (sqlstate) для каждой ошибки, что предоставляет более подробную диагностическую информацию.

Заключение

Подводя итог, функция mysqli\_error\_list() — это полезный инструмент для обработки нескольких ошибок в коде MySQLi и предпринятия соответствующих действий. Понимание принципов работы функции и интерпретация возвращаемого массива позволит вам эффективно отлаживать и обрабатывать сбои подключения к базе данных и выполнения запросов в ваших PHP-приложениях.

Practice

Which of the following represents types of Error in PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.