深入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 相关文章推荐
PHP概述.
Oct 09 PHP
不错的PHP学习之php4与php5之间会穿梭一点点感悟
May 03 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
May 07 PHP
初识php MVC
Sep 10 PHP
php中使用gd库实现下载网页中所有图片
May 12 PHP
PHP版本常用的排序算法汇总
Dec 20 PHP
PHP设置头信息及取得返回头信息的方法
Jan 25 PHP
PHP自动补全表单的两种方法
Mar 06 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
Apr 24 PHP
Laravel框架分页实现方法分析
Jun 12 PHP
laravel在中间件内生成参数并且传递到控制器中的2种姿势
Oct 15 PHP
PHP设计模式之 策略模式Strategy详解【对象行为型】
May 01 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
PHP Curl模拟登录微信公众平台、新浪微博实例代码
2016/01/28 PHP
PHP实现打包zip并下载功能
2018/06/12 PHP
HR vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
编写兼容IE和FireFox的脚本
2009/05/18 Javascript
javascript 用记忆函数快速计算递归函数
2010/03/15 Javascript
js函数setTimeout延迟执行的简单介绍
2013/07/17 Javascript
js出生日期 年月日级联菜单示例代码
2014/01/10 Javascript
javascript中字符串拼接详解
2014/09/26 Javascript
js实现百度联盟中一款不错的图片切换效果完整实例
2015/03/04 Javascript
jquery+ajax请求且带返回值的代码
2015/08/12 Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
2016/01/28 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
Vue.js 和 MVVM 的注意事项
2016/11/07 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
2017/03/14 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
2017/06/08 Javascript
Vue.js学习记录之在元素与template中使用v-if指令实例
2017/06/27 Javascript
vue2.x 父组件监听子组件事件并传回信息的方法
2017/07/17 Javascript
Node.js log4js日志管理详解
2018/07/31 Javascript
使用Vue 实现滑动验证码功能
2019/06/27 Javascript
vue如何限制只能输入正负数及小数
2019/07/04 Javascript
在layui中layer弹出层点击事件无效的解决方法
2019/09/05 Javascript
[03:06]V社市场总监Dota2项目负责人Erik专访:希望更多中国玩家加入DOTA2
2014/07/11 DOTA
Python中用altzone()方法处理时区的教程
2015/05/22 Python
python递归打印某个目录的内容(实例讲解)
2017/08/30 Python
Python实现购物车功能的方法分析
2017/11/10 Python
Pycharm以root权限运行脚本的方法
2019/01/19 Python
python入门之基础语法学习笔记
2020/02/08 Python
巴西女装购物网站:Eclectic
2018/04/24 全球购物
印度领先的眼镜电子商务网站:Lenskart
2019/12/16 全球购物
大唐电信科技股份有限公司java工程师面试经历
2016/12/09 面试题
strstr()的简单实现
2013/09/26 面试题
商务英语本科生的自我评价分享
2013/11/15 职场文书
产品质量承诺书
2014/03/27 职场文书
2014个人年度工作总结范文
2014/12/24 职场文书
如何用Laravel包含你自己的帮助函数
2021/05/27 PHP
使用MybatisPlus打印sql语句
2022/04/22 SQL Server