深入分析使用mysql_fetch_object以对象的形式返回查询结果_php技巧_脚本之家

 必赢亚州手机网站     |      2019-11-24 00:57

mysql_fetch_object()同样用于获取查询数据结果集,返回当前行数据,并自动滑向下一行。但与mysql_fetch_row不同的是,它返回的是一个对象,这个对象的属性集合即为数据的属性集合,而属性上的值则为数据库中当前行该属性上的值。函数定义如下。复制代码 代码如下:object mysql_fetch_object( int result, int [result_type])参数说明同mysql_fetch_array()。返回值如下。成功:一个对象,该对象的属性名对应于结果集中的属性名,属性的值就是结果集中对应的属性值。失败:false。下面是使用mysql_fetch_object()的示例:查询数据表Computers中的图书信息。复制代码 代码如下:1 2

同mysql_fetch_row()类似,函数mysql_fetch_array()也是获取结果集中当前行数据,并在调用后自动滑向下一行。其定义如下。复制代码 代码如下:array mysql_fetch_array(int result, int [result_type])参数说明如下。result:由函数mysql_query返回的结果标识,用来指定所要获取的数据的SQL语句类型。result_type:用于指定结果集类型,可选,取值范围为PHP常量集合{MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH}。函数返回值如下。成功:一个数组,该数组包含了查询结果集中当前行数据信息,数组下标范围0~记录属性数−1,数组中的第i个元素值为该记录第i个属性上的值。同时可以使用属性名来得到该属性上的值。失败:false。下面示例使用mysql_fetch_array()得到Computers数据表中价格不小于20的图书信息。复制代码 代码如下:1 2 ";10 $result=mysql_query;11 //mysql_fetch_array()获得数据,并输出12 while($row=mysql_fetch_array13 {14 echo "书名: ".$row[1]."
";15 echo "价格: ".$row["price"]."
";16 echo "出版日期: ".$row["publish_date"]."
";17 echo "
";18 }19 ?>示例在第12行使用mysql_fetch_array()获取当前行数据,然后在第12~18行的循环中分别使用属性索引和属性名获取这一行某属性上的值。从中不难看出,mysql_fetch_array的区别在于,前者返回数组中保存了结果集的两个备份,一个可以通过属性索引访问,另一个则可以通过属性名访问。注意必赢亚州手机网站,当通过属性名访问属性上的值时,如果有几个属性的名相同,则索引在后的属性会把在前的属性值覆盖掉。因此,在使用属性名获得数据时,要避免查询结果集中属性重名。示例运行的结果如下。复制代码 代码如下:书名: 数据结构价格: 20出版日期: 2001-01-01书名: C语言价格: 23出版日期: 1998-04-04书名: PHP入门技术价格: 22出版日期: 2005-05-01