我对这些代码片段在 while 循环中显示结果的不同之处感到困惑。第一段代码完美运行,但第二段显示结果,但在无限循环中这样做,只是重复结果。有人可以向我解释为什么吗?
$stmt = $db_conn->prepare($sql);
$stmt->execute(array("Lorna", 3));
while($result = $stmt->fetch()){
echo $result["name"] . "<br />" . $result["description"] . "<br />";
}
如果我将 $stmt->fetch() 放入名为 $data 的变量中并尝试传递它而不是仅将 $stmt->fetch() 放入 while 循环中,我会得到一个无限循环。
$stmt = $db_conn->prepare($sql);
$stmt->execute(array("Lorna", 3));
$data = $stmt->fetch();
while($result = $data){
echo $result["name"] . "<br />" . $result["description"] . "<br />";
}
提前致谢!