一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

php mysql_fetch_array与mysql_fetch_assoc区别

时间:2011-06-25 编辑:简简单单 来源:一聚教程网

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  根据参数不同结果可能是以下三种之一
         array([username]=>'test',[password]=>'123456')
         array([0]=>'test',[1]=>'123456')
         array([username]=>'test',[password]=>'123456',[0]=>'test',[1]=>'123456')

 

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

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

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

热门栏目