php – mysql_fetch_array while循环.它是如何工作的?

前端之家收集整理的这篇文章主要介绍了php – mysql_fetch_array while循环.它是如何工作的?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我已经阅读了关于PHP.net上的功能,但仍然没有回答我的问题.我知道C的初学者数量,我刚开始使用PHP.通常在C中,如果你要做一个while循环,那么需要有一些条件来将循环推进到不再有效的程度,如下所示:

while (x >= 10)  
{ 
    printf("..."; 
    printf("x \n"; 
    x++; 
}

但是在我用于pm消息系统的PHP脚本中,我有一个像这样的while循环:

while($row2 = MysqL_fetch_array($query))

其次是:

{ 
  echo "PHP echo $_SERVER['PHP_SELF']?>" method="post">
PHP echo $row['id']; ?>"> PHP echo $row['id']; ?>"> PHP echo $row['from']; ?>"> PHP } ?>

这究竟是如何工作的,从C背景看起来几乎就像它会保持在同一个位置,每次我们通过循环时从相同的“$query”打印出相同的“数组获取”’行’. ..

有没有办法可以写这个来让我更好地理解最新情况?喜欢说:

$i=0;
while ($row = ($i+MysqL_fetch_array($query)) {
...
...
$i++;}

我知道可能不会工作,但这个功能如何增加?有没有办法把它写在代码中实际可以看到某种增量的地方?

谢谢

最佳答案
每次调用MysqL_fetch_array时,它都会从查询提取下一行. while循环保持返回true,而MysqL_fetch_array仍有一些东西要分配给变量$row2.一旦它没有行,它就没有任何东西可以提供变量,并返回false.

ETA:关于你提到的最后一点,你可以在循环的每次迭代中有一个变量增量,就像在你的例子中一样,但这并不是完全必要的.您还可以通过在while循环之前执行类似$var = MysqL_num_rows($data)的操作来查看已返回的行数.

猜你在找的MySQL相关文章