首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP数组: count还是sizeof?

PHP数组: count还是sizeof?
EN

Stack Overflow用户
提问于 2010-10-20 10:46:59
回答 8查看 169.4K关注 0票数 244

要找出PHP $array中元素的数量,哪个更快/更好/更强?

count($array)还是sizeof($array)

编辑

多亏了Andy Lester,我将我的问题从多语言的角度进行了改进。手册评论者说

"sizeof在许多其他基于C的语言中并不意味着相同“

这是真的吗?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2010-10-20 10:55:10

如果它们是相同的,我会使用count(),因为根据我的经验,它更常见,因此会导致较少的开发人员在阅读您的代码时会问"sizeof(),那是什么?“并且必须查阅文档。

我认为这意味着sizeof()不能像在C中那样工作(计算数据类型的大小)。它之所以明确提到这一点,可能是因为PHP是用C语言编写的,并为C函数(strlen()printf()等)提供了许多同名的包装器。

票数 209
EN

Stack Overflow用户

发布于 2014-05-01 23:23:26

根据phpbench的说法

是否值得提前计算循环的长度?

代码语言:javascript
复制
//pre-calculate the size of array
$size = count($x); //or $size = sizeOf($x);

for ($i=0; $i<$size; $i++) {
    //...
}

//don't pre-calculate
for ($i=0; $i<count($x); $i++) { //or $i<sizeOf($x);
    //...
}

给出了一个具有1000个键和1个字节值的循环。

代码语言:javascript
复制
                  +---------+----------+
                  | count() | sizeof() |
+-----------------+---------+----------+
| With precalc    |     152 |      212 |
| Without precalc |   70401 |    50644 |
+-----------------+---------+----------+  (time in µs)

所以我个人更喜欢使用count()而不是sizeof()来进行预计算。

票数 106
EN

Stack Overflow用户

发布于 2010-10-20 10:49:36

根据sizeof()的说法,它们是相同的

在没有任何理由担心“更快”的情况下,始终为人类进行优化。对人类读者来说,哪一个更有意义?

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

https://stackoverflow.com/questions/3974385

复制
相关文章

相似问题

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