我正在尝试获取数据并通过foreach循环显示它但它不起作用给出参数错误但是当我尝试使用while循环时它工作正常。所以我的问题是为什么我无法使用mysqli_fetch_array
获取数据,因为只有while loop
// While
while($row = mysqli_fetch_row($result))
{
var_dump($row); echo "<hr />";
}
// Foreach
foreach(mysqli_fetch_array($result) as $row)
{
var_dump($row); echo "<hr />";
}
答案 0 :(得分:1)
你不能直接使用foreach for mysqli_fetch_array。 Foreach是一个用于存在数组的循环,用于遍历每个项目
您可以使用如下
$result = array();
while($row = mysqli_fetch_array($result)) {
$result[] = $row;
}
foreach($result as $row) {
var_dump($row);
echo "<hr />";
}
答案 1 :(得分:0)
因为mysqli_fetch_array
来自它的名称 - 将结果的一行作为数组获取。
所以,foreach(mysqli_fetch_array($result) as $row)
表示
获取一行并遍历此行。
虽然while($row = mysqli_fetch_row($result))
表示
的信息获取行直到无法获取任何内容。 当没有什么可以获取
while
时 - 条件为false
并且循环中断。