深入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格式化日期和时间格式化示例分享
Feb 24 PHP
Codeigniter中mkdir创建目录遇到权限问题和解决方法
Jul 25 PHP
PHP反向代理类代码
Aug 15 PHP
thinkphp中ajax与php响应过程详解
Dec 08 PHP
php单文件版在线代码编辑器
Mar 12 PHP
PHP邮件群发机实现代码
Feb 16 PHP
PHP数据库操作Helper类完整实例
May 11 PHP
Yii 2.0自带的验证码使用经验分享
Jun 19 PHP
PHP回调函数与匿名函数实例详解
Aug 16 PHP
使用laravel根据用户类型来显示或隐藏字段
Oct 17 PHP
详解PHP设计模式之依赖注入模式
May 25 PHP
详解thinkphp的Auth类认证
May 28 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合并数组中相同元素的方法
2014/11/13 PHP
thinkphp利用模型通用数据编辑添加和删除的实例代码
2016/11/20 PHP
PHP 中TP5 Request 请求对象的实例详解
2017/07/31 PHP
Extjs入门之动态加载树代码
2010/04/09 Javascript
JS鼠标事件大全 推荐收藏
2011/11/01 Javascript
深入分析Javascript跨域问题
2015/04/17 Javascript
JavaScript实现点击按钮切换网页背景色的方法
2015/10/17 Javascript
JavaScript的Number对象的toString()方法
2015/12/18 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
html+js实现简单的计算器代码(加减乘除)
2016/07/12 Javascript
jQuery EasyUI右键菜单实现关闭标签/选项卡
2016/10/10 Javascript
js中通过getElementsByName访问name集合对象的方法
2016/10/31 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
select下拉框插件jquery.editable-select详解
2017/01/22 Javascript
layui问题之渲染数据表格时,仅出现10条数据的解决方法
2019/09/12 Javascript
layui对工具条进行选择性的显示方法
2019/09/19 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
[06:16]第十四期-国士无双绝地翻盘之撼地神牛
2014/06/24 DOTA
python中enumerate函数遍历元素用法分析
2016/03/11 Python
详解Python进程间通信之命名管道
2017/08/28 Python
Flask解决跨域的问题示例代码
2018/02/12 Python
Django实现单用户登录的方法示例
2019/03/28 Python
Python3搭建http服务器的实现代码
2020/02/11 Python
Tensorflow安装问题: Could not find a version that satisfies the requirement tensorflow
2020/04/20 Python
为什么group by 和order by会使查询变慢
2014/05/16 面试题
一些Solaris面试题
2015/12/22 面试题
实习生单位鉴定意见
2013/12/04 职场文书
同学会邀请书大全
2014/01/12 职场文书
小学三年级数学教学反思
2014/01/31 职场文书
暑期社会实践感言
2014/02/25 职场文书
工作建议书范文
2014/05/13 职场文书
竞选大队干部演讲稿
2014/09/11 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
思品教学工作总结
2015/08/10 职场文书
微信小程序实现拍照和相册选取图片
2021/05/09 Javascript
Golang中channel的原理解读(推荐)
2021/10/16 Golang