深入for,while,foreach遍历时间比较的详解


Posted in PHP onJune 08, 2013

这个是从别人空间里看来的,不过自己还真从来没这么做过他们三者之间的比较,今天也学习了一下。

<?php
$arr = array();
for($i = 0; $i < 50000; $i++){
$arr[] = $i*rand(1000,9999);
}
function GetRunTime()
{
list($usec,$sec)=explode(" ",microtime());
return ((float)$usec+(float)$sec);
}
/*=============================================*/
$time_start = GetRunTime();
for($i = 0; $i < count($arr); $i++){
$str = $arr[$i];
}
$time_end = GetRunTime();
$time_used = $time_end - $time_start;
echo 'Used time of for:'.round($time_used, 7).'(s)<br /><br />';
unset($str, $time_start, $time_end, $time_used);
/*=============================================*/
$time_start = GetRunTime();
while(list($key, $val) = each($arr)){
$str = $val;
}
$time_end = GetRunTime();
$time_used = $time_end - $time_start;
echo 'Used time of while:'.round($time_used, 7).'(s)<br /><br />';
unset($str, $key, $val, $time_start, $time_end, $time_used);
/*=============================================*/
$time_start = GetRunTime();
foreach($arr as $key => $val){
$str = $val;
}
$time_end = GetRunTime();
$time_used = $time_end - $time_start;
echo 'Used time of foreach:'.round($time_used, 7).'(s)<br /><br />';
?>
PHP 相关文章推荐
用libTemplate实现静态网页的生成
Oct 09 PHP
php错误提示failed to open stream: HTTP request failed!的完美解决方法
Jun 06 PHP
PHP imagecreatefrombmp 从BMP文件或URL新建一图像
Jul 16 PHP
深入php函数file_get_contents超时处理的方法详解
Jun 03 PHP
php设计模式之命令模式使用示例
Mar 02 PHP
php cookie名使用点号(句号)会被转换
Oct 23 PHP
php中获取主机名、协议及IP地址的方法
Nov 18 PHP
PHP超牛逼无限极分类生成树方法
May 11 PHP
PHP中如何防止外部恶意提交调用ajax接口
Apr 11 PHP
PHPCMS V9 添加二级导航的思路详解
Oct 20 PHP
php+mysql实现简单登录注册修改密码网页
Nov 30 PHP
PHP MVC框架中类的自动加载机制实例分析
Sep 18 PHP
完美解决:Apache启动问题―(OS 10022)提供了一个无效的参数
Jun 08 #PHP
处理单名多值表单的详解
Jun 08 #PHP
探讨fckeditor在Php中的配置详解
Jun 08 #PHP
php创建基本身份认证站点的方法详解
Jun 08 #PHP
编写安全 PHP应用程序的七个习惯深入分析
Jun 08 #PHP
编写php应用程序实现摘要式身份验证的方法详解
Jun 08 #PHP
探讨方法的重写(覆载)详解
Jun 08 #PHP
You might like
Email+URL的判断和自动转换函数
2006/10/09 PHP
Server.HTMLEncode让代码在页面里显示为源代码
2013/12/08 PHP
php中heredoc与nowdoc介绍
2014/12/25 PHP
如何把php5.3版本升级到php5.4或者php5.5
2015/07/31 PHP
jquery 学习笔记一
2010/04/07 Javascript
Javascript中克隆一个数组的实现代码
2013/12/06 Javascript
AngularJS入门教程之 XMLHttpRequest实例讲解
2016/07/27 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
jquery实现拖动效果(代码分享)
2017/01/25 Javascript
JavaScript与Java正则表达式写法的区别介绍
2017/08/15 Javascript
Vee-Validate的使用方法详解
2017/09/22 Javascript
JS原型对象操作实例分析
2020/06/06 Javascript
vue@cli3项目模板怎么使用public目录下的静态文件
2020/07/07 Javascript
JS变量提升及函数提升实例解析
2020/09/03 Javascript
[02:52]2017DOTA2国际邀请赛中国区预选赛晋级之路
2017/07/03 DOTA
[02:17]快乐加倍!DOTA2食人魔魔法师至宝+迎霜节活动上线
2019/12/22 DOTA
[44:43]完美世界DOTA2联赛决赛日 FTD vs GXR 第一场 11.08
2020/11/11 DOTA
Python 备份程序代码实现
2017/03/06 Python
Python实现变量数值交换及判断数组是否含有某个元素的方法
2017/09/18 Python
Mac中Python 3环境下安装scrapy的方法教程
2017/10/26 Python
python PyTorch预训练示例
2018/02/11 Python
Python异常处理操作实例详解
2018/08/28 Python
python绘制多个子图的实例
2019/07/07 Python
python实现多线程端口扫描
2019/08/31 Python
使用OpenCV实现道路车辆计数的使用方法
2020/07/15 Python
荟萃全球保健品:维他购
2018/05/09 全球购物
Fnac西班牙官网:法国文化和电子产品零售商
2021/03/14 全球购物
杭州-飞时达软件有限公司.net笔面试
2012/04/28 面试题
学徒工职责
2014/03/06 职场文书
标准的毕业生自荐信
2014/04/20 职场文书
三方股东合作协议书
2014/10/28 职场文书
2014年宣传思想工作总结
2014/12/10 职场文书
建筑技术负责人岗位职责
2015/04/13 职场文书
浪漫的婚礼主持词
2015/06/30 职场文书
大学三好学生主要事迹范文
2015/11/03 职场文书
创业项目大全(适合在家创业的项目)
2019/08/15 职场文书