请记住,mysqli::reap_async_query 仅在类似 SELECT 的查询上返回 mysqli_result。对于您可能对 affected_rows 或 insert_id 等内容感兴趣的查询,您不能像 mysqli::poll 中的示例那样从 mysqli::reap_async_query 的结果中进行操作。对于 INSERT/UPDATE/DELETE 查询,对应于查询的数据可以通过 mysqli::poll 函数中第一个数组的关联键进行访问。
所以,不是
<?php
foreach ($links as $link) {
if ($result = $link->reap_async_query()) {
print_r($result->fetch_row());
mysqli_free_result($result);
$processed++;
}
}
?>
数据可以通过以下方式访问
<?php
foreach ($links as $link) {
if ($result = $link->reap_async_query()) {
if(is_object($result)){
print_r($result->fetch_row());
mysqli_free_result($result);
}
else {
print_r($link);
}
$processed++;
}
}
?>