函数:SqlStatement::hasMoreResults()
适用版本:PHP 8.0.0 及以上
用法:SqlStatement::hasMoreResults() 函数用于检查当前 SQL 语句执行后是否还有更多的结果集可用。
示例:
<?php
// 假设已经建立了数据库连接并执行了查询操作
$sql = "SELECT * FROM users";
$stmt = $pdo->query($sql);
// 检查是否有更多的结果集可用
if ($stmt instanceof SqlStatement && $stmt->hasMoreResults()) {
// 处理当前结果集
$result = $stmt->fetch();
// 继续处理下一个结果集(如果有)
while ($stmt->nextRowset()) {
$result = $stmt->fetch();
}
}
?>
在上面的示例中,我们首先执行了一条 SELECT 查询并将结果保存在 $stmt
变量中。然后,我们使用 SqlStatement::hasMoreResults()
函数来检查是否还有更多的结果集可用。如果有,我们可以使用 SqlStatement::fetch()
函数来获取当前结果集的行数据。然后,我们使用 SqlStatement::nextRowset()
函数来移动到下一个结果集(如果有)。这个过程可以在循环中重复,直到没有更多的结果集可用为止。
请注意,SqlStatement::hasMoreResults()
函数仅在使用 PDO 扩展的情况下才可用,并且需要在 PHP 8.0.0 及以上版本中使用。