可能重复:
mysql_fetch_array, mysql_fetch_assoc, mysql_fetch_object
我想要一个函数,它可以将结果集当前行中的字段返回到关联数组中,并将结果指针移动到下一行。
混淆
mysql_fetch_row()
mysql_fetch_assoc()
mysql_fetch_array()
我应该使用哪一个?任何帮助,将不胜感激。 谢谢。
答案 0 :(得分:49)
您正在寻找mysql_fetch_assoc
,,因为名称意味着它将返回一个关联数组(列名为键,值为行值)。
所有提到的函数都将返回一个数组,它们之间的区别在于返回对象中用作键的值。
<强> mysql_fetch_row
强>
此函数将返回一行,其中值将按SQL查询中定义的顺序排列,并且键将从0
跨越至少于所选列数的一个。
<强> mysql_fetch_assoc
强>
此函数将返回一行作为关联数组,其中列名称将是存储相应值的键。
<强> mysql_fetch_array
强>
此函数实际上将返回一个数组,其中mysql_fetch_row
和mysql_fetch_assoc
的内容合并为一个。它将具有数字和字符串键,可让您以最简单的方式访问数据。
建议使用_assoc
或_row
。
答案 1 :(得分:7)
mysql_fetch_assoc
。
mysql_fetch_row
当您将其用作list($a,$b,$c...) = ...
从不mysql_fetch_array
。
答案 2 :(得分:2)
mysql_fetch_assoc()
假设您的表有两列id和name。您可以使用以下代码段 -
while ($row = mysql_fetch_assoc($result)) {
echo $row["id"];
echo $row["name"];
}