我很难理解
的用法while($row = mysql_fetch_array($query))
显示在变量"$query"中的一些数据库元素。此外,我不明白什么是传递给变量"$行"由函数"mysql_fetch_array()"。我的猜测是,只有一个记录(或行)的数据库记录在"$query"是给定的,但该函数如何知道哪一行??
我将用一个例子来解释我自己。
假设我在变量$query中有3条记录,有两个字段(说"id"answers"name")。在第一个while变量$row被第一个元素填充(比如id=1, name=antonio),然后一些代码允许我显示或操作"1"answers"antonio",然后代码结束,while再次开始。
现在我假设给变量"行"的是第二个元素,但是函数如何知道必须返回第二个元素(而不是第一个或第三个)??我的意思是,我没有在任何地方提供这些信息…
如果您将语句$row = mysql_fetch_array()
作为while循环的条件语句,您将完成两件事:
-
当while循环检查它的条件语句时,你会得到一行新的MySQL信息,你可以打印出来。
-
当没有更多的行函数将返回FALSE导致while循环停止!
变量$query是一种资源,因此具有某种内部"行计数器"。每次调用mysql_fetch_array()或其变体时,该计数器都会增加一倍。因此,每次调用mysql_fetch_array函数时,都会得到下一行。当接收到最后一行,并且再次调用它时,它返回false。由于while循环的工作方式,您需要跳出这个循环