日期:2014-05-16  浏览次数:20622 次

mysql_fetch_array、mysql_fetch_row、mysql_fetch_assoc 的区别

mysql_fetch_array :首先3个参数(MYSQL_ASSOC(采用关联索引)、MYSQL_NUM(采用数字索引)、 MYSQL_BOTH(同时采用数字以及关联索引的数组) )默认值是MYSQL_BOTH:返回数字索引数组和关联数组。

mysql_fetch_row :只返回数字索引数组。

mysql_fetch_assoc :只返回关联索引数组。

?

------------------------------------------------

两种查询函数array / row区别
格式:mysql_fetch_row(result);
说明:mysql_fetch_row用来查询结果的一行保存至数组,该数组下标从0开始,每一个数组元素对应
一个域。通过循环,可以将查询结果全部获得。
格式:mysql_fetch_array(result);
说明:mysql_fetch_array和mysql_fetch_row功能基本相同,只不过它除了可以用从0开始的偏移量作
索引,还可以用域名作索引。
值返回下一行的所有域值,并将其保存至一个数组中,没有行时返回false。
mysql_query("set names 'GBK'"); 解决中文乱码

?

------------------------------------------------

加入SQL是:
$sql="select abc,def from a";
$res=mysql_query($sql);

那么:
$row=mysql_fetch_row($res);
$row 结果是两个:$row[0]和$row[1]

那么:
$row=mysql_fetch_array($res);
$row 结果是4个:$row[0]、$row[1]、$row["abc"]和$row["def"]