浏览器输出内容同上。

当使用 MYSQL_BOTH 或省略该参数是,将同时具有 MYSQL_NUM 与 MYSQL_ ASSOC 的特性。

MySQL mysql_fetch_array 函数取得查询结果中的一行作为数组

mysql_fetch_* 列函数

mysql_fetch_* 列函数的主要功能是从查询返回的结果集中取得相关的查询结果,主要包括:

  • mysql_fetch_array():从结果集中取得一行作为关联数组或索引数组,或二者兼有
  • mysql_fetch_row():从结果集中取得一行作为枚举数组
  • mysql_fetch_assoc():从结果集中取得一行作为关联数组
  • mysql_fetch_object():从结果集中取得一行作为对象
  • mysql_fetch_field():从结果集中取得字段信息并作为对象返回
  • mysql_fetch_lengths():取得结果集中取得一行每个字段内容输出的长度

     mysql_fetch_array()

mysql_fetch_array() 函数用于从结果集中取得一行作为关联数组或索引数组,或二者兼有。成功返回一个数组,否则返回 FALSE 。

语法:

array mysql_fetch_array( resource result [, int result_type] ) 

参数说明:
参数 说明
result 查询函数(如 mysql_query)返回的数据集资源
result_type

可选常量,标明数组结果类型,可接受值如下:

  1. MYSQL_BOTH:默认,得到一个同时包含关联和数字索引的数组,用字段名作为键名
  2. MYSQL_ASSOC:只得到关联索引的数组
  3. MYSQL_NUM:只得到数字索引的数组

例子 1 ,使用 MYSQL_NUM :

<?php $conn = @mysql_connect("localhost","root","root123");
 if (!$conn){    
     die("连接数据库失败:" . mysql_error());
      } 
 mysql_select_db("test", $conn); 
mysql_query("set character set 'gbk'"); 
 $result = mysql_query("SELECT uid,username FROM user");
 while($row = mysql_fetch_array($result, MYSQL_NUM)){    
  echo "用户ID:".$row[0]."<br />";   
  echo "用户名:".$row[1]."<br />"; } ?>

浏览器输出:
用户ID:1 
用户名:admin 
用户ID:2
 用户名:小明
 用户ID:3 
 用户名:Jack 
用户ID:4 
用户名:小王

例子 2 ,使用 MYSQL_ ASSOC :
//重复代码省略 $result = mysql_query("SELECT uid,username FROM user");
 while($row = mysql_fetch_array($result, MYSQL_ ASSOC)){    
 echo "用户ID:".$row['uid']."<br />";    
 echo "用户名:".$row['username']."<br />";
 }

浏览器输出内容同上。

当使用 MYSQL_BOTH 或省略该参数是,将同时具有 MYSQL_NUM 与 MYSQL_ ASSOC 的特性。

说明

  1. 本函数返回的字段名作为数组键值是区分大小写的
  2. 用 mysql_fetch_array() 并不明显 比用 mysql_fetch_row() 慢,而且还提供了明显更多的值
  3. 该函数只从当前数据指针取得一行数据作为结果返回,如果执行过一次,会将数据指针指向下一列数据
  4. 如果要取得多行或者全部数据,需要使用循环结构将数据逐行取出
  5. 如果结果中的两个或以上的列具有相同字段名,最后一列将优先。要访问同名的其它列,必须用该列的数字索引或给该列起个别名
  6. mysql_fetch_row()

    PHP 的 MySQL 操作函数 mysql_fetch_row() 用于从结果集中取得一行作为枚举数组。成功返回一个数组,否则返回 FALSE 。 语法:
    array mysql_fetch_row( resource result ) 

    该函数表现与 mysql_fetch_array( resource result, MYSQL_NUM ) 一致,请参考mysql_fetch_array() 函数用法,在此不在赘述。

    mysql_fetch_object()

    PHP 操作 MySQL 的函数 mysql_fetch_object() 用于从结果集中取得一行作为对象,成功返回一个对象,否则返回 FALSE 。

    语法:

    object mysql_fetch_object( resource result ) 

    例子:

    <?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){     die("连接数据库失败:" . mysql_error()); }  mysql_select_db("test", $conn); mysql_query("set character set 'gbk'");  $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_object($result)){     echo "用户ID:".$row->uid."<br />";     echo "用户名:".$row->username."<br />"; } ?> 

    浏览器输出:

    用户ID:1 用户名:admin 用户ID:2 用户名:小明 用户ID:3 用户名:Jack 用户ID:4 用户名:小王

mysql fetch 系列函数的更多相关文章

  1. Mysql高手系列 - 第10篇:常用的几十个函数详解,收藏慢慢看

    这是Mysql系列第10篇. 环境:mysql5.7.25,cmd命令中进行演示. MySQL 数值型函数 函数名称 作 用 abs 求绝对值 sqrt 求二次方根 mod 求余数 ceil 和 ce ...

  2. PHP 使用 curl_* 系列函数和 curl_multi_* 系列函数进行多接口调用时的性能对比

    在页面中调用的服务较多时,使用并行方式,即使用 curl_multi_* 系列函数耗时要小于 curl_* 系列函数. 测试环境 操作系统:Windows x64 Server:Apache PHP: ...

  3. Mysql备份系列(4)--lvm-snapshot备份mysql数据(全量+增量)操作记录

    Mysql最常用的三种备份工具分别是mysqldump.Xtrabackup(innobackupex工具).lvm-snapshot快照.前面分别介绍了:Mysql备份系列(1)--备份方案总结性梳 ...

  4. Mysql备份系列(1)--备份方案总结性梳理

    mysql数据库备份有多么重要已不需过多赘述了,废话不多说!以下总结了mysql数据库的几种备份方案: 一.binlog二进制日志通常作为备份的重要资源,所以再说备份方案之前先总结一下binlog日志 ...

  5. mysql存储过程、函数和触发器的创建 [转]

    http://blog.itpub.net/559237/viewspace-438942/ 今天花了半天时间来研究mysql的存储过程函数和触发器的创建,觉得和oracle的大同小异,只是语法上更艰 ...

  6. mysql存储过程详解 mysql存储过程和函数

    第20章:存储程序和函数 目录 20.1. 存储程序和授权表 20.2. 存储程序的语法 20.2.1. CREATE PROCEDURE和CREATE FUNCTION 20.2.2. ALTER ...

  7. MySql存储过程与函数详解

    存储过程和函数是在数据库中定义一些SQL语句的集合,然后直接调用这些存储过程和函数来执行已经定义好的SQL语句.存储过程和函数可以避免开发人员重复的编写相同的SQL语句.而且,存储过程和函数是在MyS ...

  8. Mysql优化系列之数据类型优化

    本篇是优化系列的第一篇:数据类型 为了不产生赘述,尽量用简洁的语言来描述. 在选择数据类型之前,首先要知道几个原则: 更小的通常更好 尽量使用可以正确存储数据的最小数据类型.更小的数据类型意味着更快, ...

  9. Mysql - 存储过程/自定义函数

    在数据库操作中, 尤其是碰到一些复杂一些的系统, 不可避免的, 会用到函数/自定义函数, 或者存储过程. 实际项目中, 自定义函数和存储过程是越少越好, 因为这个东西多了, 也是一个非常难以维护的地方 ...

随机推荐

  1. CSU1327+贪心+模拟

    题意简单,中文题目 方法:对于一个数 从左往右找相同的数 ,有就改变靠右的,同时把该数的右边全置0 注意!!!!n<0!!! /* */ #include<algorithm> #i ...

  2. ActiveMQ可靠性机制

    消息的签收(Acknowledgment): 客户端成功接收一条消息的标志是这条消息被签收. 成功接收一条消息一般包括如下三个阶段: (1) 客户端接收消息  (2) 客户端处理消息   (3) 消息 ...

  3. JavaScript window.open()属性

    一. Window 对象 Window 对象是 JavaScript 层级中的顶层对象. Window 对象代表一个浏览器窗口或一个框架. Window 对象会在 <body> 或 < ...

  4. python操作Excel读--使用xlrd

    一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 二.使用介绍 1.导入模块 import x ...

  5. Java面试题-并发容器和框架

    1. 如何让一段程序并发的执行,并最终汇总结果? 答:使用CyclicBarrier 和CountDownLatch都可以,使用CyclicBarrier 在多个关口处将多个线程执行结果汇总,Coun ...

  6. node安装插件方法

    node安装插件方法有几种,这里列出常用的两种方法: 方法1: 进入要安装插件的目录,直接用 npm 软件安装包安装,如(安装express): cd /project npm install -g ...

  7. MAX-HEAPIFY(2/3n的疑惑)

    Q: In CLRS, third Edition, on page 155, it is given that in MAX-HEAPIFY, The children’s subtrees eac ...

  8. Repeater的ItemCommand事件(LinkButton)

    Repeater的ItemCommand事件,就是在里面加一个超链接的按钮,所有按钮都指向同一个事件,就是ItemCommand事件. 至于如何区分是点击的什么按钮,还有传的值,需要用到LinkBut ...

  9. acdream 小晴天老师系列——竖式乘法(简单穷举)

    小晴天老师系列——竖式乘法 Time Limit: 4000/2000MS (Java/Others)    Memory Limit: 128000/64000KB (Java/Others)   ...

  10. 15个实用的Linux find命令示例(一)

    除了在一个目录结构下查找文件这种基本的操作,你还可以用find命令实现一些实用的操作,使你的命令行之旅更加简易. 本文将介绍15种无论是于新手还是老鸟都非常有用的Linux find命令. 首先,在你 ...