mysql_fetch_array()
语法:array mysql_fetch_array(int result,int [result_type]);
返回值:数组
函数种类:数据库功能
详细介绍:
本函数用来将查询结果result拆到数组变量中。若result没有资料,则返回false值。而本函数可以说是mysql_fetch_row()的加强函数,除了可以将返回列及数字索引放入数组之外,还可以将文字索引放入数组中。若是好几个返回字段都是相同的文字名称,则最后一个置入的字段有效,解决方法是使用数字索引或者为这些同名的字段(column)取别名(alias)。
注意:使用该函数的处理速度其实不会比mysql_fetch_row()函数慢,使用哪个函数主要看自己的需求。
result_type 是一个常量值,MYSQL_ASSOC、MYSQL_NUM 与 MYSQL_BOTH等。
<?php
mysql_connect($host,$user,$password);
$result = mysql_db_query("database","select * from table");
while($row = mysql_fetch_array($result)) {
echo $row["user_id"];
echo $row["fullname"];
}
mysql_free_result($result);
?>
mysql_fetch_array()
语法:array mysql_fetch_row ( resource result);
返回:数组
函数种类:数据库功能
详细介绍:
本函数用来将查询结果 result 之单列拆到数组变量中。数组的索引是数字索引,第一个的索引值是 0。若 result 没有资料,则返回 false 值。
返回根据所取得的行生成的数组,如果没有更多行则返回 FALSE。
mysql_fetch_row() 从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从 0 开始。
依次调用 mysql_fetch_row() 将返回结果集中的下一行,如果没有更多行则返回FALSE。
总结:
mysql_fetch_row是从结果集取出1行数组,作为枚举
mysql_fetch_array是从结果集取出一行数组作为关联数组,或数字数组,两者兼得
eg:
$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"]