首页 > 编程知识 正文

php中遍历数组,php获取数组最大值

时间:2023-05-05 02:19:24 阅读:180510 作者:3653

PHP还很常用,所以我研究了PHP序列的遍历。 在这里拿出来和大家分享,希望对大家有帮助。 关于PHP数组遍历,实际上很多人都在接受测试,如http://www.lilov.org/post/18.html,但这些讨论实际上太简单了。 在这里,我们将更全面地讨论这个问题。 看起来有点吹毛求疵,编写程序要有这样的思想,不断精益求精。 不是3360吗

首先,我很少说for、while和foreach如何遍历PHP数组。 不知道的事情可以自己去PHP官方查阅手册,但是用for、while、foreach遍历数组的写法也不同。 那么,效果如何? 接下来看就知道了。 程序可以通过上面链接中的Lilov编写的程序进行更改。 具体内容可以下载源文件并测试后改名。

测试一: PHP4.4.1,使用一维序列

号码

语句

时间

1

for($I=0; $I$num=count($arr ); $i )

0.1048162(s )。

2

for($I=0,$num=count ) $arr ); $i $num; $i )

0.0698998(s ) )。

3

wile(list ) $key,$val )=each ) $arr ) )

0.1437800(s )

4

while(list ),$val )=each ) $arr ) )

0.1226320(s ) )。

5

while(list($key,)=each ) $arr ) )

0.1119628(s ) )。

6

Foreach($arras$key=$val ) ) ) ) ) ) ) ) ) ) )。

是0.0972550(s )

7

($ arras $ val ) )。

0.0649691(s ) )。

在测试PHP4.4.1下,使用2位数组

号码

语句

时间

1

for($I=0; $I$num=count($arr ); $i )

0.0824819(s )。

2

for($I=0,$num=count ) $arr ); $i $num; $i )

是0.0523129(s )

3

wile(list ) $key,$val )=each ) $arr ) )

0.1273971(s ) )。

4

while(list ),$val )=each ) $arr ) )

是0.0961161(s )

5

while(list($key,)=each ) $arr ) )

0.1245570(s )。

6

Foreach($arras$key=$val ) ) ) ) ) ) ) ) ) ) )。

0.0764248(s )。

7

($ arras $ val ) )。

1.1415598(s )。

结果变化很大

最快的是2。 因为for不管理多维问题,所以一维数组的时间和速度没有太大变化。 (为什么比一维快呢,只能说这是受到了文件中运算的影响。 ) )这种影响确实存在。 在PEAR的Benchmark系上测试时,发现1次测试、100次、1000次得到的时间差异很大。 ) )。

接下来是6。 如同测试1所述,如果2不可用(也就是下标不连续),6肯定在***的选择中打破眼镜的是7,竟然是最慢的,而且比第二慢的慢10倍……这个问题实在让人费解。 之后,通过细致的测试,发现7这种方法主要受到元素数量的影响。 如果是第1维的10个元素的话,第2维的但是,如果1维1000个元素的2维元素超过3个,7就会比6慢很多。

【责任编辑: BZdsytel:(010 ) 68476606】

点赞0

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。