用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 相关文章推荐
如何给phpadmin一个保护
Oct 09 PHP
php在window iis的莫名问题的测试方法
May 14 PHP
PHP下载生成的csv文件及问题总结
Aug 06 PHP
thinkphp微信开之安全模式消息加密解密不成功的解决办法
Dec 02 PHP
Symfony2实现在doctrine中内置数据的方法
Feb 05 PHP
利用PHPExcel实现Excel文件的写入和读取
Apr 26 PHP
php中请求url的五种方法总结
Jul 13 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
Aug 28 PHP
PHP设计模式之观察者模式定义与用法示例
Aug 04 PHP
PHP获取远程http或ftp文件的md5值的方法
Apr 15 PHP
PHP Trait代码复用类与多继承实现方法详解
Jun 17 PHP
php生成静态页面并实现预览功能
Jun 27 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 数组遍历方法大全(foreach,list,each)
2010/06/30 PHP
php代码审计比较有意思的例子
2014/05/07 PHP
Zend Framework教程之分发器Zend_Controller_Dispatcher用法详解
2016/03/07 PHP
PHP数组array类常见操作示例
2020/05/15 PHP
jquery 弹出登录窗口实现代码
2009/12/24 Javascript
js 学习笔记(三)
2009/12/29 Javascript
jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)
2010/10/20 Javascript
让javascript加载速度倍增的方法(解决JS加载速度慢的问题)
2014/12/12 Javascript
JavaScript前端图片加载管理器imagepool使用详解
2014/12/29 Javascript
JavaScript将字符串转换成字符编码列表的方法
2015/03/19 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
JS+CSS实现自适应选项卡宽度的圆角滑动门效果
2015/09/15 Javascript
Bootstrap每天必学之下拉菜单
2015/11/25 Javascript
ionic开发中点击input时键盘自动弹出
2016/12/23 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
详解如何在Vue2中实现组件props双向绑定
2017/03/29 Javascript
详解webpack进阶之插件篇
2017/07/06 Javascript
详谈JS中数组的迭代方法和归并方法
2017/08/11 Javascript
jQuery封装animate.css的实例
2018/01/04 jQuery
解决bootstrap-select 动态加载数据不显示的问题
2018/08/10 Javascript
解决vue中修改了数据但视图无法更新的情况
2018/08/27 Javascript
jQuery实现的淡入淡出图片轮播效果示例
2018/08/29 jQuery
在vue中使用jsx语法的使用方法
2019/09/30 Javascript
原生js实现滑块区间组件
2021/01/20 Javascript
Python实现单词翻译功能
2017/06/06 Python
python爬虫获取新浪新闻教学
2018/12/23 Python
python3.4 将16进制转成字符串的实例
2019/06/12 Python
django将数组传递给前台模板的方法
2019/08/06 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
大学生个人求职口试自我评价
2014/02/16 职场文书
经济贸易系求职信
2014/08/04 职场文书
毕业生党员个人总结
2015/02/14 职场文书
2015年社区矫正工作总结
2015/04/21 职场文书
大学校园招聘会感想
2015/08/10 职场文书
在vue中import()语法不能传入变量的问题及解决
2022/04/01 Vue.js