微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php mysql_fetch_array与mysql_fetch_assoc区别

一直以来对这两个函数的区别很模糊,只知道MysqL_fetch_assooc()可以去除结果集中的重复值,在实际应用中一般都用MysqL_fetch_assoc(),今天想到了这两个函数索性就查了下他们的区别,进一步对其加深下了解,MysqL_fetch_assoc() 函数从结果集中取得一行作为关联数组,返回根据从结果集取得的行生成的关联数组,如果没有更多行,则返回 false,MysqL_fetch_array() 是 MysqL_fetch_row()  的扩展版本,除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,

用字段名作 为键名,如果结果中的两个或以上的列具有相同字段名,最后一列将优先,要访问同名的其它列,必须用该列 的数字索引或给该列起个别名,对有别名的列,不能再用原来的列名访问其内容(本例中的 'field'),MysqL_fetch_array --  从结果集中取得一行作为关联数组,或数字数组,或二者兼有.

注释:MysqL_fetch_assoc() 和用  MysqL_fetch_array() 加上第二个可选参数 MysqL_ASSOC 完全相同,它仅仅返回关联数组,这也是  MysqL_fetch_array() 初始的工作方式,即:MysqL_fetch_array($result,'MysqL_ASSOC')与MysqL_fetch_assoc($result)返回结果相同.

提示:如果在关联索引之外还需要数字索引,用 MysqL_fetch_array()。

注释:函数返回的字段名是区分大小写的。

MysqL_fetch_assoc 得到的是关联数组。

MysqL_fetch_array 可以得到关联数组也可以得到索引数组,也可以二者都有。

下面以一个例子进行说明它们的区别:

假如从数据库取出一个用户用户名和密码

username   password

test       123456

用assoc  结果是array([username]=>'test',[password]=>'123456')

用array  根据参数不同结果可能是以下三种之一

  1. array([username]=>'test',[password]=>'123456') 
  2.          array([0]=>'test',[1]=>'123456') 
  3.          array([username]=>'test',[password]=>'123456',[0]=>'test',[1]=>'123456') 

提示和注释

注释:MysqL_fetch_assoc() 和用 MysqL_fetch_array() 加上第二个可选参数 MysqL_ASSOC 完全相同。它仅仅返回关联数组。这也是 MysqL_fetch_array() 初始的工作方式。

提示:如果在关联索引之外还需要数字索引,用 MysqL_fetch_array()。

注释:函数返回的字段名是区分大小写的

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐