mysqli_stmt::get_warnings
(mysqli_stmt_get_warnings)获取SHOW WARNINGS的结果
PHP 5.3.0 及以上版本
mysqli_stmt::get_warnings 函数用于检索与当前语句句柄相关的警告信息。该函数返回的是一个包含警告信息的对象,可以用于检查SQL执行过程中的警告并进行处理。
mysqli_stmt::get_warnings();
此函数没有参数。
该函数返回一个 mysqli_warning 对象,包含有关最后一次执行的查询的警告信息。如果没有警告,则返回 NULL。
以下是一个使用 mysqli_stmt::get_warnings 的示例:
<?php $mysqli = new mysqli("localhost", "user", "password", "database"); <p>// 检查连接是否成功<br> if ($mysqli->connect_error) {<br> die("连接失败: " . $mysqli->connect_error);<br> }</p> <p>// 准备一个查询<br> $stmt = $mysqli->prepare("SELECT * FROM non_existing_table");</p> <p>// 执行查询<br> $stmt->execute();</p> <p>// 获取警告<br> $warnings = $stmt->get_warnings();</p> <p>// 检查并显示警告<br> if ($warnings) {<br> while ($warning = $warnings->fetch_assoc()) {<br> echo "警告信息: " . $warning['Message'] . "<br>";<br> }<br> } else {<br> echo "没有警告信息。<br>";<br> }</p> <p>// 关闭连接<br> $stmt->close();<br> $mysqli->close();<br> ?><br>
在这个示例中,我们首先连接到 MySQL 数据库并准备一个查询。由于我们查询的是一个不存在的表 "non_existing_table",执行该查询会导致警告。然后我们使用 get_warnings() 方法来获取与该查询相关的警告信息,并通过 fetch_assoc() 方法逐条显示警告信息。如果没有警告,则输出“没有警告信息”。