全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点

2015-01-24信息快讯网

全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点,需要的朋友可以参考下。

 
// 定义全局变量 记录时间 
$_timer_id = 0; 
// 函数设置全局变量 记录各个断点的运行所需时间 
function makeTimer( $notes, $onOff=FALSE ) 
{ 
if( $onOff ) 
{ 
global $_timer_id; 
$GLOBALS['timer'][$_timer_id][0] = microtime(TRUE); 
$GLOBALS['timer'][$_timer_id][1] = $notes; 
$_timer_id++; 
} 
} 
// 把全局运行时间情况输出 
function traceTimer() 
{ 
$timer_str = ''; 
$G_timer = count($GLOBALS['timer'])-1; 
if( $G_timer>0 ) 
{ 
for( $i=0;$i<$G_timer;$i++ ) 
{ 
$dif_time = number_format( ($GLOBALS['timer'][$i+1][0] - $GLOBALS['timer'][$i][0]), 3 ); 
$timer_str .= 'dif: '.$dif_time.' '.$GLOBALS['timer'][$i][1]."\n"; 
} 
$dif_time = number_format( (microtime(TRUE) - $GLOBALS['timer'][$G_timer][0]), 3 ); 
$timer_str .= 'dif: '.$dif_time.' '.$GLOBALS['timer'][$G_timer][1]."\n"; 
} 
return $timer_str; 
} 
使用方法: 
// 开始时间 
makeTimer( ' LINE:'.__LINE__ ); 
$imgstrpos = strpos($str, '<img'.$imgstr); 
makeTimer( ' LINE:'.__LINE__ ); 
$str_p = substr($str_noimg, 0, $imgstrpos); 
makeTimer( ' LINE:'.__LINE__ ); 
$str_n = substr($str_noimg, $imgstrpos, strlen($str_noimg)); 
makeTimer( ' LINE:'.__LINE__ ); 
$pst_exc_imgs = $str_p.'<img '.$imgstr.'>'.$str_n." "; 
makeTimer( ' LINE:'.__LINE__ ); 
// 记录到日志中 
error_log( traceTimer(), 3, '/tmp/'.basename(__FILE__).'.log' ); 
// 或者直接输出 
echo traceTimer(); 

at 2010-05-14 09:20
PHP得到某段时间区间的时间戳 php定时任务
PHP运行出现Notice : Use of undefined constant 的完美解决方案分享
MySQL时间字段究竟使用INT还是DateTime的说明
PHP测试程序运行时间的类
php删除页面记录 同时刷新页面 删除条件用GET方式获得
PHP性能优化工具篇Benchmark类调试执行时间
php 记录进行累加并显示总时长为秒的结果
使用PHP实现密保卡功能实现代码&lt;打包下载直接运行&gt;
PHP实现时间轴函数代码
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
php记录日志的实现代码
php代码运行时间查看类代码分享
php学习笔记 [预定义数组(超全局数组)]
php 面试碰到过的问题 在此做下记录
php中全局变量global的使用演示代码
php中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
php 获取全局变量的代码
php循环检测目录是否存在并创建(循环创建目录)
Discuz Uchome ajaxpost小技巧
php运行出现Call to undefined function curl_init()的解决方法
php下统计用户在线时间的一种尝试
在Windows系统上安装PHP运行环境文字教程
php flv视频时间获取函数
php set_time_limit(0) 设置程序执行时间的函数
php 随机记录mysql rand()造成CPU 100%的解决办法
php date()日期时间函数详解
php 删除记录同时删除图片文件的实现代码
PHP 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
在IIS7.0下面配置PHP 5.3.2运行环境的方法
PHP 最大运行时间 max_execution_time修改方法
php 用checkbox一次性删除多条记录的方法
php cli 方式 在crotab中运行解决
认识并使用PHP超级全局变量
PHP5 面向对象(学习记录)
数据库查询记录php 多行多列显示
php 全局变量范围分析
©2014-2024 dbsqp.com