用mysql_fetch_array()获取当前行数据的方法详解
用mysql_fetch_array()获取当前行数据的方法详解
发布时间:2016-12-29 来源:查字典编辑
摘要:同mysql_fetch_row()类似,函数mysql_fetch_array()也是获取结果集中当前行数据,并在调用后自动滑向下一行。其...

同mysql_fetch_row()类似,函数mysql_fetch_array()也是获取结果集中当前行数据,并在调用后自动滑向下一行。其定义如下。

复制代码 代码如下:

array mysql_fetch_array(int result, int [result_type])

参数说明如下。

(1)result:由函数mysql_query()或mysql_db_query()返回的结果标识,用来指定所要获取的数据的SQL语句类型。

(2)result_type:用于指定结果集类型,可选,取值范围为PHP常量集合{MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH}。

函数返回值如下。

成功:一个数组,该数组包含了查询结果集中当前行数据信息,数组下标范围0~记录属性数−1,数组中的第i个元素值为该记录第i个属性上的值。同时可以使用属性名来得到该属性上的值。

失败:false。

下面示例使用mysql_fetch_array()得到Computers数据表中价格不小于20的图书信息。

复制代码 代码如下:

1 <使用mysql_fetch_array()来获取数据:mysql_fetch_array.php---->

2 <?php

3 //连接并选择到数据库服务器

4 $connection = mysql_connect ("localhost", "root", "password");

5 mysql_select_db("Books", $connection);

6 //查询数据

7 $query="SELECT * FROM Computers ";

8 $query.="WHERE price >= 20";

9 //echo $query."<br>";

10 $result=mysql_query($query,$connection);

11 //mysql_fetch_array()获得数据,并输出

12 while($row=mysql_fetch_array($result))

13 {

14 echo "书名: ".$row[1]."<br>";

15 echo "价格: ".$row["price"]."<br>";

16 echo "出版日期: ".$row["publish_date"]."<br>";

17 echo "<br>";

18 }

19 ?>

示例在第12行使用mysql_fetch_array()获取当前行数据,然后在第12~18行的循环中分别使用属性索引和属性名获取这一行某属性上的值。从中不难看出,mysql_fetch_array()与mysql_fetch_row()的区别在于,前者返回数组中保存了结果集的两个备份,一个可以通过属性索引访问,另一个则可以通过属性名访问。

注意

当通过属性名访问属性上的值时,如果有几个属性的名相同,则索引在后的属性会把在前的属性值覆盖掉。因此,在使用属性名获得数据时,要避免查询结果集中属性重名。

示例运行的结果如下。

复制代码 代码如下:

书名: 数据结构

价格: 20

出版日期: 2001-01-01

书名: C语言

价格: 23

出版日期: 1998-04-04

书名: PHP入门技术

价格: 22

出版日期: 2005-05-01

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类