首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql fetch assoc VS mysql fetch数组

mysql fetch assoc VS mysql fetch数组
EN

Stack Overflow用户
提问于 2012-03-02 21:16:10
回答 10查看 66.8K关注 0票数 14

下面是大多数php代码中常用的两种获取mysql数据的方法。

  1. mysql_fetch_array()
  2. mysql_fetch_assoc()

我有一个很大的数据库。对于在循环中获取数据(while),什么更快更好?

我找到了这个基准

哪一个是你的选择?

EN

回答 10

Stack Overflow用户

发布于 2012-03-02 21:25:41

这取决于表的设置方式:

mysql_fetch_array()本质上返回两个数组,一个带有数字索引,一个带有关联字符串索引。

因此,使用mysql_fetch_array()而不指定MYSQL_ASSOCMYSQL_NUM,或者通过指定MYSQL_BOTH将返回两个数组(基本上是mysql_fetch_assoc()mysql_fetch_row()将返回的数组),这样mysql_fetch_assoc()就会更快。

如果您的表设置正确并正确地编写了查询,mysql_fetch_assoc()就是方法之一,从代码可读性角度看,$result['username']$result[0]更容易理解。

票数 18
EN

Stack Overflow用户

发布于 2015-05-07 17:22:29

这是mysql_fetch_array()的结果

代码语言:javascript
复制
$row['fieldname'] = 'some value';

代码语言:javascript
复制
$row[0] = some value';

这是mysql_fetch_assoc()的结果只会返回

代码语言:javascript
复制
$row['fieldname'] = 'some value';
票数 3
EN

Stack Overflow用户

发布于 2012-03-02 21:21:45

我更喜欢fetch_assoc。它返回一个“关联数组”(类似于python字典)。这意味着数组是由字符串索引的(在我通常的情况下)。

fetch_array的默认值给出了编号索引和关联索引。

但是我从不使用编号的索引,所以我喜欢用fetch_assoc使它更快一些。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9540483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档