gpt4 book ai didi

php - count() 在 while 循环后给我错误的输出

转载 作者:搜寻专家 更新时间:2023-10-31 21:04:54 25 4
gpt4 key购买 nike

我正在从我的数据库中获取数据,count() 在 while 循环中获取数据后给我一个错误的输出。为什么?

输出是:

Line: 1 
Line: 2
Count after loop: 3

代码:

while($line[] = mysqli_fetch_array($result)){
echo 'Line: '.count($line);
}
echo 'Count after loop: '.count($line);

最佳答案

这是因为在第 3 次迭代中 mysqli_fetch_array()将返回 NULL,因为没有剩余的行,您可以将其添加到数组中。

在计算结果为 FALSE 的 NULL 上,while 循环将停止,但它会被添加到数组中。所以你有 3 个元素,例如

Array ( 
[0] => something
[1] => something
[2] => NULL
)

您可以在执行时看到:var_dump($line);。另外现在要解决这个问题,您可以简单地将代码放在 while 循环中以添加元素,例如

while($row = mysqli_fetch_array($result)){    $line[] = $row;    echo 'Line: '.count($line);}echo 'Count after loop: '.count($line);

因此,如果 $row 为 NULL,则不会将 $row 添加到 $line

关于php - count() 在 while 循环后给我错误的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34258307/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com