©
本文档使用 PHP中文网手册 发布
(PHP 5 >= 5.4.0)
mysqli_stmt::$error_list -- mysqli_stmt_error_list — Returns a list of errors from the last statement executed
面向对象风格
过程化风格
$stmt
)Returns an array of errors for the most recently invoked statement function that can succeed or fail.
stmt
仅以过程化样式:由 mysqli_stmt_init() 返回的 statement 标识。
A list of errors, each as an associative array containing the errno, error, and sqlstate.
Example #1 面向对象风格
<?php
$mysqli = new mysqli ( "localhost" , "my_user" , "my_password" , "world" );
if ( mysqli_connect_errno ()) {
printf ( "Connect failed: %s\n" , mysqli_connect_error ());
exit();
}
$mysqli -> query ( "CREATE TABLE myCountry LIKE Country" );
$mysqli -> query ( "INSERT INTO myCountry SELECT * FROM Country" );
$query = "SELECT Name, Code FROM myCountry ORDER BY Name" ;
if ( $stmt = $mysqli -> prepare ( $query )) {
$mysqli -> query ( "DROP TABLE myCountry" );
$stmt -> execute ();
echo "Error:\n" ;
print_r ( $stmt -> error_list );
$stmt -> close ();
}
$mysqli -> close ();
?>
Example #2 过程化风格
<?php
$link = mysqli_connect ( "localhost" , "my_user" , "my_password" , "world" );
if ( mysqli_connect_errno ()) {
printf ( "Connect failed: %s\n" , mysqli_connect_error ());
exit();
}
mysqli_query ( $link , "CREATE TABLE myCountry LIKE Country" );
mysqli_query ( $link , "INSERT INTO myCountry SELECT * FROM Country" );
$query = "SELECT Name, Code FROM myCountry ORDER BY Name" ;
if ( $stmt = mysqli_prepare ( $link , $query )) {
mysqli_query ( $link , "DROP TABLE myCountry" );
mysqli_stmt_execute ( $stmt );
echo "Error:\n" ;
print_r ( mysql_stmt_error_list ( $stmt ));
mysqli_stmt_close ( $stmt );
}
mysqli_close ( $link );
?>
以上例程会输出:
Array ( [0] => Array ( [errno] => 1146 [sqlstate] => 42S02 [error] => Table 'world.myCountry' doesn't exist ))