錯誤代碼
$mysqli->multi_query($sql2);
do {
$result = $mysqli->store_result();
while ($row = $mysqli->fetch_row()) { // 錯誤:$mysqli 無 fetch_row 方法
...
}
} while ($mysqli->next_result());
修正
$mysqli->multi_query($sql2);
do {
if ($result = $mysqli->store_result()) { // store_result 返回 mysqli_result 或 false
while ($row = $result->fetch_row()) { // 在 result 對象上調用
foreach ($row as $v) echo "----$v";
echo "\n";
}
$result->free();
}
} while ($mysqli->next_result());
關鍵點
mysqli::store_result() 返回 mysqli_result 對象(或 false)。
fetch_row()、fetch_assoc() 等屬於 mysqli_result,而非 mysqli。
next_result() 推進到下一結果集,需配合 more_results() 判斷。