查詢

mysqli_stmt::$error_list()函式—用法及示例

「 獲取最近一次執行的預處理語句的錯誤列表 」


函式名稱:mysqli_stmt::$error_list()

適用版本:PHP 5 >= 5.4.0, PHP 7

函式說明:mysqli_stmt::$error_list() 方法用於獲取最近一次執行的預處理語句的錯誤列表。

用法:

mysqli_stmt::$error_list(): array

引數說明:該函式不接受任何引數。

返回值:返回一個包含錯誤資訊的陣列,每個錯誤資訊都以關聯陣列的形式表示,包含以下鍵:

  • "errno":表示錯誤程式碼。
  • "sqlstate":表示 SQLSTATE 錯誤程式碼。
  • "error":表示錯誤訊息。

示例:

$conn = new mysqli("localhost", "username", "password", "database");
$stmt = $conn->stmt_init();
$stmt->prepare("SELECT * FROM users WHERE id = ?");
$stmt->bind_param("i", $id);

// 執行預處理語句
$stmt->execute();

// 獲取錯誤列表
$errorList = $stmt->error_list;

if (count($errorList) > 0) {
    foreach ($errorList as $error) {
        echo "錯誤程式碼: " . $error['errno'] . "<br>";
        echo "SQLSTATE 錯誤程式碼: " . $error['sqlstate'] . "<br>";
        echo "錯誤訊息: " . $error['error'] . "<br>";
    }
} else {
    echo "預處理語句執行成功!";
}

$stmt->close();
$conn->close();

在上面的示例中,首先建立了一個 mysqli 連線物件,並初始化了一個 mysqli_stmt 物件。然後使用 prepare() 方法準備了一條帶有引數佔位符的 SQL 查詢語句。接下來,使用 bind_param() 方法繫結引數。然後,透過執行 execute() 方法執行預處理語句。

最後,透過訪問 error_list 屬性來獲取錯誤列表。如果錯誤列表不為空,則遍歷錯誤列表並列印每個錯誤的錯誤程式碼、SQLSTATE 錯誤程式碼和錯誤訊息。如果錯誤列表為空,則表示預處理語句執行成功。

請注意,為了演示,上述示例中的資料庫連線引數("localhost"、"username"、"password"、"database")需要根據實際情況進行替換。

補充糾錯
下一個函式: mysqli_stmt::$error()函式
熱門PHP函式
分享連結