深入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模板之Phpbean的目录结构
Jan 10 PHP
php中利用post传递字符串重定向的实现代码
Apr 21 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
May 24 PHP
PHP中计算字符串相似度的函数代码
Dec 29 PHP
基于MySQL到MongoDB简易对照表的详解
Jun 03 PHP
ThinkPHP实现带验证码的文件上传功能实例
Nov 01 PHP
ThinkPHP静态缓存简单配置和使用方法详解
Mar 23 PHP
php自动载入类用法实例分析
Jun 24 PHP
php对接java现实加签验签的实例
Nov 25 PHP
php app支付宝回调(异步通知)详解
Jul 25 PHP
php 利用socket发送GET,POST请求的实例代码
Jul 04 PHP
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
Apr 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
The specified CGI application misbehaved by not returning a complete set of HTTP headers
2011/03/31 PHP
PHP获取http请求的头信息实现步骤
2012/12/16 PHP
php制作unicode解码工具(unicode编码转换器)代码分享
2013/12/24 PHP
php中convert_uuencode()与convert_uuencode函数用法实例
2014/11/22 PHP
[原创]图片分页查看
2006/08/28 Javascript
ImageFlow可鼠标控制图片滚动
2008/01/30 Javascript
Prototype使用指南之selector.js说明
2008/10/26 Javascript
javascript读写XML实现广告轮换(兼容IE、FF)
2013/08/09 Javascript
JQuery对表单元素的基本操作使用总结
2014/07/18 Javascript
Node.js和MongoDB实现简单日志分析系统
2015/04/25 Javascript
jQuery实现文件上传进度条特效
2015/08/12 Javascript
node-http-proxy修改响应结果实例代码
2016/06/06 Javascript
jQuery实现动态添加tr到table的方法
2016/12/26 Javascript
在react中使用vuex的示例代码
2018/07/30 Javascript
基于nodejs的雪碧图制作工具的示例代码
2018/11/05 NodeJs
JS高阶函数原理与用法实例分析
2019/01/15 Javascript
微信小程序如何实现在线客服功能
2019/10/16 Javascript
JavaScript如何实现监听键盘输入和鼠标监点击
2020/07/20 Javascript
[06:30]DOTA2英雄梦之声_第15期_死亡先知
2014/06/21 DOTA
[01:12]DOTA2次级职业联赛 - Newbee.Y 战队宣传片
2014/12/01 DOTA
[42:23]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第二场 12.10
2020/12/13 DOTA
Python去除列表中重复元素的方法
2015/03/20 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
2016/01/20 Python
python获取栅格点和面值的实现
2020/03/10 Python
pycharm 实现光标快速移动到括号外或行尾的操作
2021/02/05 Python
HTML5标签与HTML4标签的区别示例介绍
2013/07/18 HTML / CSS
美丽的现代设计家具:2Modern
2018/07/26 全球购物
英国家喻户晓的家居商店:The Range
2019/03/25 全球购物
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
出国留学计划书
2014/04/27 职场文书
优秀应届本科生求职信
2014/07/19 职场文书
2014年秘书工作总结
2014/11/25 职场文书
怎样写好演讲稿题目?
2019/08/21 职场文书
OpenCV实现反阈值二值化
2021/11/17 Java/Android
详解jQuery的核心函数和事件处理
2022/02/18 jQuery
如何打开Win11系统注册表编辑器?Win11注册表编辑器打开修复方法
2022/04/05 数码科技