mysqli_stmt::more_results
(mysqli_stmt_more_results) 检查多个查询是否有更多查询结果
适用PHP版本:PHP 5.0.0及以上版本。
函数说明:此函数用于检查当前的MySQLi预处理语句是否还有剩余的结果集。在执行多语句查询时,可能会存在多个结果集,可以通过此函数判断是否存在更多结果集。
函数语法:mysqli_stmt::more_results()
参数:此函数不需要任何参数。
返回值:如果有更多结果集,返回true;否则,返回false。
示例:
假设我们有一个多语句查询,我们想要检查是否还有其他结果集:
$mysqli = new mysqli("localhost", "user", "password", "database"); $query = "SELECT * FROM table1; SELECT * FROM table2;"; $stmt = $mysqli->prepare($query); if ($stmt->execute()) { do { // 处理当前结果集 $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { echo $row['column_name'] . "<br>"; } } while ($stmt->more_results() && $stmt->next_result()); }
示例代码的说明:
在上述示例中,我们首先创建了一个包含两个SELECT语句的多语句查询。然后通过调用execute()来执行查询。在每次处理完当前结果集后,我们使用mysqli_stmt::more_results()来检查是否还有其他结果集。如果有,我们使用next_result()来移动到下一个结果集。