array_push 效率测试_PHP教程

php中文网
发布: 2016-07-13 17:49:57
原创
1565人浏览过

php中数组赋值的时候用array[]这种方法效率会较高于array_push(),于是乎各种缘由就有了下面的测试
测试代码:
 1  2     /**
 3     *数组性能测试
 4     *for循环有性能影响所以没有用
 5     *测试是更改$count参数(从10~100000 整取递增)和调用方法手动刷新,记录时间为平均大概时间
 6     **/
 7
 8     $count = 10;
 9    
10     arrayTest01($count);   
11
12     function arrayTest01($count){
13         $arr = array();
14                 $time = microtime(true);
15         for($i = 0; $i 16             $array[] = $i;
17         }
18         echo (microtime(true) - $time);
19     }
20
21     function arrayTest02($count){
22         $arr = array();
23                 $time = microtime(true);
24         for($i = 0; $i 25             array_push($arr, $i);
26         }
27         echo (microtime(true) - $time);
28     }
29
30 ?>

效率大概是array[]快将近一倍,测试环境是ubuntu 11 和 windows 7

windows php-5.2.17/ Apache2.2
times($count)    10 100 1000
10000   100000   1000000
 
array[] 2.31E-05 0.000104
0.000867 0.008417 0.043666
0.288323
array_push        2.79E-05
0.000181 0.001614 0.014447
0.055875 0.491052
ubuntu11.04 PHP 5.3.6/apache2.2
array[] 1.91E-05 7.70E-05
0.000726 0.007669 0.040492 报错
 
array_push        2.50E-05
1.26E-04 0.001149 0.013714
0.056978 报错

这是官方网站上的说辞
Note: 如果用 array_push() 来给数组增加一个单元,还不如用 $array[] = ,因为这样没有调用函数的额外负担。
官网链接:
http://cn.php.net/array_push


 

白瓜面试
白瓜面试

白瓜面试 - AI面试助手,辅助笔试面试神器

白瓜面试 40
查看详情 白瓜面试
摘自  静以修心 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478305.htmlTechArticle在php中数组赋值的时候用array[]这种方法效率会较高于array_push(),于是乎各种缘由就有了下面的测试 测试代码: 1 ?php 2 /** 3 *数组性能测试...
相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号