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