查找PHP $数组中的元素数量,哪个更快/更好/更强?
计数($array)或sizeof($array) ?
Edit
感谢安迪·莱斯特,我把我的问题从多语言的角度提炼了出来。手册评论者说
“[sizeof]在里面的意思不一样 许多基于C语言的其他语言”
这是真的吗?
查找PHP $数组中的元素数量,哪个更快/更好/更强?
计数($array)或sizeof($array) ?
Edit
感谢安迪·莱斯特,我把我的问题从多语言的角度提炼了出来。手册评论者说
“[sizeof]在里面的意思不一样 许多基于C语言的其他语言”
这是真的吗?
当前回答
两者都用于计数数组中的元素。sizeof()函数是PHP中使用的count()函数的别名。然而,count()函数比sizeof()更快更好。
其他回答
根据phpbench:
值得花费精力提前计算循环的长度吗?
//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字节值的循环。
+---------+----------+
| count() | sizeof() |
+-----------------+---------+----------+
| With precalc | 152 | 212 |
| Without precalc | 70401 | 50644 |
+-----------------+---------+----------+ (time in µs)
所以我个人更喜欢使用count()而不是sizeof()与pre calc。
根据网站的说法,sizeof()是count()的别名,所以它们应该运行相同的代码。也许sizeof()有一点开销,因为它需要解析它来count()?它应该是非常小的。
请使用计数函数,这是一个例子如何计数数组在一个元素
$cars = array("Volvo","BMW","Toyota");
echo count($cars);
函数的作用是:返回数组中元素的个数。
函数的作用是:返回数组中元素的个数。
sizeof()函数是count()函数的别名。
Sizeof()只是count()的别名 正如这里提到的
http://php.net/manual/en/function.sizeof.php
两者都用于计数数组中的元素。sizeof()函数是PHP中使用的count()函数的别名。然而,count()函数比sizeof()更快更好。