用mysql_fetch_array()获取当前行数据的方法详解


Posted in PHP onJune 05, 2013

同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使用codebase生成随机数
Mar 25 PHP
Thinkphp中import的几个用法详细介绍
Jul 02 PHP
ThinkPHP水印功能实现修复PNG透明水印并增加JPEG图片质量可调整
Nov 05 PHP
php生成excel列名超过26列大于Z时的解决方法
Dec 29 PHP
php防止用户重复提交表单
Nov 02 PHP
如何使用PHP Embed SAPI实现Opcodes查看器
Nov 10 PHP
Thinkphp框架开发移动端接口(2)
Aug 18 PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
Dec 29 PHP
PHP实现在对象之外访问其私有属性private及保护属性protected的方法
Nov 20 PHP
详解thinkphp中的volist标签
Jan 15 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
Apr 23 PHP
Laravel框架源码解析之反射的使用详解
May 14 PHP
深入分析使用mysql_fetch_object()以对象的形式返回查询结果
Jun 05 #PHP
深入mysql_fetch_row()与mysql_fetch_array()的区别详解
Jun 05 #PHP
浅谈php serialize()与unserialize()的用法
Jun 05 #PHP
基于php 随机数的深入理解
Jun 05 #PHP
PHP autoload与spl_autoload自动加载机制的深入理解
Jun 05 #PHP
PHP中__get()和__set()的用法实例详解
Jun 04 #PHP
深入PHP运行环境配置的详解
Jun 04 #PHP
You might like
使用PHP socke 向指定页面提交数据
2008/07/23 PHP
PHP基于文件存储实现缓存的方法
2015/07/20 PHP
php实现可运算的验证码
2015/11/10 PHP
thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json完整实例
2020/03/02 PHP
浅谈javascript的数据类型检测
2010/07/10 Javascript
JS获取键盘上任意按键的值(实例代码)
2013/11/12 Javascript
javascript读取Xml文件做一个二级联动菜单示例
2014/03/17 Javascript
node.js中的buffer.fill方法使用说明
2014/12/14 Javascript
封装了jQuery的Ajax请求全局配置
2015/02/05 Javascript
javascript去除空格方法小结
2015/05/21 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
使用vue的v-for生成table并给table加上序号的实例代码
2017/10/27 Javascript
vue路由前进后退动画效果的实现代码
2018/12/10 Javascript
详解微信小程序网络请求接口封装实例
2019/05/02 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
JS如何操作DOM基于表格动态展示数据
2020/10/15 Javascript
[47:31]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.12
2020/12/16 DOTA
跟老齐学Python之永远强大的函数
2014/09/14 Python
跟老齐学Python之编写类之二方法
2014/10/11 Python
Python常用的日期时间处理方法示例
2015/02/08 Python
python&amp;MongoDB爬取图书馆借阅记录
2016/02/05 Python
深入浅析python3中的unicode和bytes问题
2019/07/03 Python
最新pycharm安装教程
2020/11/18 Python
使用HTML5 Canvas API中的clip()方法裁剪区域图像
2016/03/25 HTML / CSS
全球性的在线婚纱礼服工厂:27dress.com
2019/03/21 全球购物
利用异或运算实现两个无符号数的加法运算
2013/12/20 面试题
什么是索引指示器
2012/08/20 面试题
工程部经理岗位职责
2013/12/08 职场文书
《花瓣飘香》教学反思
2014/04/15 职场文书
学校师德承诺书
2014/05/23 职场文书
2014年加油站工作总结
2014/12/04 职场文书
高考学习决心书
2015/02/04 职场文书
财务会计个人原因辞职信
2019/06/21 职场文书
TV动画《神废柴☆偶像》公布先导PV
2022/03/20 日漫
python垃圾回收机制原理分析
2022/04/13 Python