时间:2021-07-01 10:21:17 帮助过:4人阅读
mysql_fetch_array() 函数用于从结果集中取得一行作为关联数组或索引数组,或二者兼有。成功返回一个数组,否则返回 FALSE 。
语法:
array mysql_fetch_array( resource result [, int result_type] )
参数说明:
例子 1 ,使用 MYSQL_NUM :
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set character set 'gbk'"); $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_array($result, MYSQL_NUM)){ echo "用户ID:".$row[0]."
"; echo "用户名:".$row[1]."
"; } ?>
浏览器输出:
用户ID:1 用户名:admin 用户ID:2 用户名:小明 用户ID:3 用户名:Jack 用户ID:4 用户名:小王
例子 2 ,使用 MYSQL_ ASSOC :
//重复代码省略 $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_array($result, MYSQL_ ASSOC)){ echo "用户ID:".$row['uid']."
"; echo "用户名:".$row['username']."
"; }
浏览器输出内容同上。
当使用 MYSQL_BOTH 或省略该参数是,将同时具有 MYSQL_NUM 与 MYSQL_ ASSOC 的特性。
说明
本函数返回的字段名作为数组键值是区分大小写的
用 mysql_fetch_array() 并不明显 比用 mysql_fetch_row() 慢,而且还提供了明显更多的值
该函数只从当前数据指针取得一行数据作为结果返回,如果执行过一次,会将数据指针指向下一列数据
如果要取得多行或者全部数据,需要使用循环结构将数据逐行取出
如果结果中的两个或以上的列具有相同字段名,最后一列将优先。要访问同名的其它列,必须用该列的数字索引或给该列起个别名
mysql_fetch_row()
PHP 的 MySQL 操作函数 mysql_fetch_row() 用于从结果集中取得一行作为枚举数组。成功返回一个数组,否则返回 FALSE 。
语法:
array mysql_fetch_row( resource result )
该函数表现与 mysql_fetch_array( resource result, MYSQL_NUM ) 一致,请参考mysql_fetch_array() 函数用法,在此不在赘述。
mysql_fetch_object()
PHP 操作 MySQL 的函数 mysql_fetch_object() 用于从结果集中取得一行作为对象,成功返回一个对象,否则返回 FALSE 。
语法:
object mysql_fetch_object( resource result )
例子:
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set character set 'gbk'"); $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_object($result)){ echo "用户ID:".$row->uid."
"; echo "用户名:".$row->username."
"; } ?>
浏览器输出:
用户ID:1 用户名:admin 用户ID:2 用户名:小明 用户ID:3 用户名:Jack 用户ID:4 用户名:小王