請記住,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++;
}
}
?>