深入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 MYSQL乱码问题,使用SET NAMES utf8校正
Nov 30 PHP
php 无法载入mysql扩展
Mar 12 PHP
PHP批量删除、清除UTF-8文件BOM头的代码实例
Apr 14 PHP
PHP中使用TCPDF生成PDF文档实例
Jul 01 PHP
typecho插件编写教程(五):核心代码
May 28 PHP
在Linux系统的服务器上隐藏PHP版本号的方法
Jun 06 PHP
如何利用http协议发布博客园博文评论
Aug 03 PHP
Zend Framework教程之Zend_Registry对象用法分析
Mar 22 PHP
php session的应用详细介绍
Mar 22 PHP
PHP实现重载的常用方法实例详解
Oct 18 PHP
PHP文件类型检查及fileinfo模块安装使用详解
May 09 PHP
PHP Web表单生成器案例分析
Jun 02 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使用GIFEncoder类生成gif动态滚动字幕
2014/07/01 PHP
php简单备份与还原MySql的方法
2016/05/09 PHP
PHP htmlspecialchars()函数用法与实例讲解
2019/03/08 PHP
PHP实现的抓取小说网站内容功能示例
2019/06/27 PHP
Laravel5.5 视图 - 创建视图和数据传递示例
2019/10/21 PHP
JQuery实现的在新窗口打开链接的方法小结
2010/04/22 Javascript
NodeJs的优势和适合开发的程序
2016/08/14 NodeJs
node网页分段渲染详解
2016/09/05 Javascript
Bootstrap基本布局实现方法详解
2016/11/25 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
利用VUE框架,实现列表分页功能示例代码
2017/01/12 Javascript
ES6中参数的默认值语法介绍
2017/05/03 Javascript
10个最优秀的Node.js MVC框架
2017/08/24 Javascript
jQuery中内容过滤器简单用法示例
2018/03/31 jQuery
浅谈mvvm-simple双向绑定简单实现
2018/04/18 Javascript
微信小程序实现点赞、取消点赞功能
2018/11/02 Javascript
vue.js实现简单的计算器功能
2020/02/22 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
利用Python半自动化生成Nessus报告的方法
2019/03/19 Python
Python3实现的旋转矩阵图像算法示例
2019/04/03 Python
flask框架路由常用定义方式总结
2019/07/23 Python
pyenv与virtualenv安装实现python多版本多项目管理
2019/08/17 Python
Python loguru日志库之高效输出控制台日志和日志记录
2020/03/07 Python
ASP.NET Core中的配置详解
2021/02/05 Python
美国一家著名的儿童鞋制造商:Stride Rite
2017/01/02 全球购物
法国大使拉杆箱官网:DELSEY Paris
2018/03/20 全球购物
ORACLE十问
2015/04/20 面试题
二手房购房意向书范本
2014/04/01 职场文书
微笑面对生活演讲稿
2014/05/13 职场文书
中学生爱国演讲稿
2014/09/05 职场文书
我为党旗添光彩演讲稿
2014/09/10 职场文书
领导班子四风问题对照检查材料
2014/09/27 职场文书
个人贷款授权委托书样本
2014/10/07 职场文书
2014年团支部工作总结
2014/11/17 职场文书
网聊搭讪开场白
2015/05/28 职场文书
MySQL中使用or、in与union all在查询命令下的效率对比
2021/05/26 MySQL