当前位置: 首页> 函数类别大全> mysqli::reap_async_query

mysqli::reap_async_query

(mysqli_reap_async_query)从异步查询中获取结果
名称:mysqli::reap_async_query
分类:MySQLi
所属语言:php
一句话介绍:从异步 SQL 查询返回结果。

mysqli::reap_async_query

函数名

mysqli::reap_async_query

适用 PHP 版本

PHP 5 >= 5.3.0, PHP 7, PHP 8

函数说明

mysqli::reap_async_query 是一个用于异步 MySQLi 查询的函数,适用于在异步查询执行完成后,获取其结果。它通常和 mysqli::poll 搭配使用,用于从先前发出的异步查询中收集结果。

函数语法

public mysqli::reap_async_query(): mysqli_result|bool

mysqli_reap_async_query(mysqli $mysql): mysqli_result|bool

返回值

成功时返回 mysqli_result 对象(适用于 SELECT 查询),或在非 SELECT 查询中返回 true。失败时返回 false

示例

<?php
$mysqli = new mysqli("localhost", "user", "password", "test");
<p>// 启用异步查询<br>
$mysqli->query("SELECT SLEEP(2)", MYSQLI_ASYNC);</p>
<p>$links = [$mysqli];<br>
$errors = [];<br>
$reject = [];</p>
<p>// 等待查询完成<br>
if (mysqli::poll($links, $errors, $reject, 3)) {<br>
foreach ($links as $link) {<br>
if ($result = $link->reap_async_query()) {<br>
echo "异步查询成功。\n";<br>
var_dump($result->fetch_row());<br>
$result->close();<br>
} else {<br>
echo "异步查询失败。\n";<br>
}<br>
}<br>
}<br>
$mysqli->close();<br>
?><br>

示例代码的说明

本示例中首先创建了一个数据库连接,并通过 MYSQLI_ASYNC 发起一个异步查询(SELECT SLEEP(2) 模拟延迟)。随后使用 mysqli::poll 等待查询完成,完成后通过 reap_async_query() 收割查询结果。示例展示了异步查询的基本流程以及如何检查结果是否成功。

同类函数
热门文章