mysql_fetch_object mysql_fetch_row mysql_fetch_array三者区别

mysql_fetch_object mysql_fetch_row mysql_fetch_array三者区别

$array 是存储返回内容集得变量名字

mysql_fetch_row返回得要用
$array[0],$array[1]…… 这样得格式调用

mysql_fetch_array(返回索引数组+关联数组)
即可以用 $array[0],$array[1]…… 这样得格式调用
也可以用 $array['字段名1'],$array['字段名2']…… 这样得格式调用

mysql_fetch_object 返回对象格式
$array->字段名1,$array->字段名2…… 这样调用

以下是摘自官网的详细说明:

1、mysql_fetch_object
返回类资料。

语法: object mysql_fetch_object(int result, int [result_typ]);

返回值: 类

函数种类: 数据库功能

内容说明

本函数用来将查询结果 result 拆到类变量中。使用方法和 mysql_fetch_array() 几乎相同,不同的地方在于本函数返回资料是类而不是数组。若 result 没有资料,则返回 false 值。另外治募 注意的地方是,取回的类资料的索引只能是文字而不能用数字,这是因为类的特性。类资料的特性中所有的属性 (property) 名称都不能是数字,因此只好乖乖使用文字字符串当索引了。参数 result_typ是一个常量值,有以下几种常量 MYSQL_ASSOC、MYSQL_NUM 与 MYSQL_BOTH。关于速度方面,本函数的处理速度几乎和 mysql_fetch_row() 及 mysql_fetch_array() 二函数差不多,要用哪个函数还是看使用的需求决定。

使用范例

下面的例子示范如使用返回的类。

<?php
mysql_connect($host,$user,$password);
$result = mysql_db_query("MyDatabase","select * from test");
while($row = mysql_fetch_object($result)) {
    echo $row->user_id;
    echo $row->fullname;
}
mysql_free_result($result);
?>

2、mysql_fetch_array
返回数组资料。

语法: array mysql_fetch_array(int result, int [result_typ]);

返回值: 数组

函数种类: 数据库功能

内容说明

本函数用来将查询结果 result 拆到数组变量中。若 result 没有资料,则返回 false 值。而本函数可以说是 mysql_fetch_row() 的加强函数,除可以将返回列及数字索引放入数组之外,还可以将文字索引放入数组中。若是好几个返回字段都是相同的文字名称,则最后一个置入的字段有效,解决方法是使用数字索引或者为这些同名的字段 (column) 取别名 (alias)。治募 注意的是使用本函数的处理速度其实不会比 mysql_fetch_row() 函数慢,要用哪个函数还是看使用的需求决定。参数 result_typ 是一个常量值,有以下几种常量 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);
?>

3、MySQL 数据库函数库

mysql_fetch_row
返回单列的各字段。

语法: array mysql_fetch_row(int result);

返回值: 数组

函数种类: 数据库功能

内容说明

本函数用来将查询结果 result 之单列拆到数组变量中。数组的索引是数字索引,第一个的索引值是 0。若 result 没有资料,则返回 false 值。
 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据