我正在浏览Head First PHP,并且我在PHP中找到了这段代码。
它应该显示包含first_name,last_name和email的表中的每一行记录。
while($row = mysqli_fetch_array($result))
{
echo $row['first_name'] . ' ' . $row['last_name'] .
' : ' . $row['email'] . '<br />';
}
$row
数组包含mysqli_fetch_array()
获取的下一行。但这是一个由while循环检查的条件?在运行内部代码之前,while循环的确切评估为true / false?当行耗尽时,为什么循环会停止?甚至没有检查EOF的条件!那究竟是如何运作的?
答案 0 :(得分:1)
参考PHP Documenation,mysqli_fetch_array()“返回与获取的行对应的字符串数组,如果结果集中没有更多行,则返回NULL。”因此,当没有更多结果时,它返回null,其值为false并结束循环。