如何检查 fetch_assoc 循环中是否仍有行?

Ite*_*tor 4 php mysql mysqli

我使用以下代码循环遍历行:

while ($row = $result->fetch_assoc()) {
    //...
}
Run Code Online (Sandbox Code Playgroud)

但是在之前怎么可能mysqli_fetch_assoc检查是否有下一条记录呢?我的意思是,比如:$result->hasNext()

McW*_*Web 5

使用 $mysqli->num_rows 检查返回的行总数,然后将其与循环中随每次循环迭代递增的计数器进行比较。

$row_cnt = $result->num_rows;
$loop_ct = 0;
while($row = $result->fetch_assoc()) {
    if(++$loop_ct < $row_cnt) {
        //do something
    }
} 
Run Code Online (Sandbox Code Playgroud)