php统计时间和内存使用情况示例分享


Posted in PHP onMarch 13, 2014
/**
 * 记录和统计时间(微秒)和内存使用情况
 * 使用方法:
 * <code>
 * G('begin'); // 记录开始标记位
 * // ... 区间运行代码
 * G('end'); // 记录结束标签位
 * echo G('begin','end',6); // 统计区间运行时间 精确到小数后6位
 * echo G('begin','end','m'); // 统计区间内存使用情况
 * 如果end标记位没有定义,则会自动以当前作为标记位
 * 其中统计内存使用需要 MEMORY_LIMIT_ON 常量为true才有效
 * </code>
 * @param string $start 开始标签
 * @param string $end 结束标签
 * @param integer|string $dec 小数位或者m 
 * @return mixed
 */
function G($start,$end='',$dec=4) {
    static $_info       =   array();
    static $_mem        =   array();
    if(is_float($end)) { // 记录时间
        $_info[$start]  =   $end;
    }elseif(!empty($end)){ // 统计时间和内存使用
        if(!isset($_info[$end])) $_info[$end]       =  microtime(TRUE);
        if(MEMORY_LIMIT_ON && $dec=='m'){
            if(!isset($_mem[$end])) $_mem[$end]     =  memory_get_usage();
            return number_format(($_mem[$end]-$_mem[$start])/1024);          
        }else{
            return number_format(($_info[$end]-$_info[$start]),$dec);
        }           }else{ // 记录时间和内存使用
        $_info[$start]  =  microtime(TRUE);
        if(MEMORY_LIMIT_ON) $_mem[$start]           =  memory_get_usage();
    }
}
PHP 相关文章推荐
php下mysql数据库操作类(改自discuz)
Jul 03 PHP
PHP编码规范的深入探讨
Jun 06 PHP
AJAX的跨域访问-两种有效的解决方法介绍
Jun 22 PHP
PHP里8个鲜为人知的安全函数分析
Dec 09 PHP
PHP获取当前完整URL地址的函数
Dec 21 PHP
PHP+MySQL插入操作实例
Jan 21 PHP
推荐十款免费 WordPress 插件
Mar 24 PHP
php技术实现加载字体并保存成图片
Jul 27 PHP
php实现Mysql简易操作类
Oct 11 PHP
php利用嵌套数组拼接与解析json的方法
Feb 07 PHP
php实现购物车产品删除功能(2)
Jul 23 PHP
mongodb和php的用法详解
Mar 25 PHP
去除php注释和去除空格函数分享
Mar 13 #PHP
支持中文和其他编码的php截取字符串函数分享(截取中文字符串)
Mar 13 #PHP
zf框架的数据库追踪器使用示例
Mar 13 #PHP
zf框架的校验器InArray使用示例
Mar 13 #PHP
zf框架的session会话周期及次数限制使用示例
Mar 13 #PHP
zf框架的registry(注册表)使用示例
Mar 13 #PHP
zf框架的Filter过滤器使用示例
Mar 13 #PHP
You might like
Syphon 使用方法
2021/03/03 冲泡冲煮
搜索引擎技术核心揭密
2006/10/09 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
php保存信息到当前Session的方法
2015/03/16 PHP
php使用COPY函数更新配置文件的方法
2015/06/18 PHP
PHP在线书签系统分享
2016/01/04 PHP
Laravel推荐使用的十个辅助函数
2019/05/10 PHP
PHP使用redis位图bitMap 实现签到功能
2019/10/08 PHP
jsp js鼠标移动到指定区域显示选项卡离开时隐藏示例
2013/06/14 Javascript
使用js获取图片原始尺寸
2014/12/03 Javascript
JavaScript计算某一天是星期几的方法
2015/08/05 Javascript
基于Bootstrap实现tab标签切换效果
2020/04/15 Javascript
js 判断登录界面的账号密码是否为空
2017/02/08 Javascript
BootStrap Table复选框默认选中功能的实现代码(从数据库获取到对应的状态进行判断是否为选中状态)
2017/07/11 Javascript
Angular 5.0 来了! 有这些大变化
2017/11/15 Javascript
微信小程序开发之改变data中数组或对象的某一属性值
2018/07/05 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
JS中的const命令你真懂它吗
2020/03/08 Javascript
Python二叉树的定义及常用遍历算法分析
2017/11/24 Python
Python与人工神经网络:使用神经网络识别手写图像介绍
2017/12/19 Python
Python操作MySQL数据库的三种方法总结
2018/01/30 Python
解决win64 Python下安装PIL出错问题(图解)
2018/09/03 Python
python实现一组典型数据格式转换
2018/12/15 Python
linux环境下Django的安装配置详解
2019/07/22 Python
Python with语句和过程抽取思想
2019/12/23 Python
40行Python代码实现天气预报和每日鸡汤推送功能
2020/02/27 Python
css3打造一款漂亮的卡哇伊按钮
2013/03/20 HTML / CSS
乌克兰在线药房:Аптека24
2019/10/30 全球购物
Linux不知道文件后缀名怎么判断文件类型
2014/08/21 面试题
销售顾问的岗位职责
2013/11/13 职场文书
厨房管理计划书
2014/04/27 职场文书
关于运动会的广播稿
2014/09/22 职场文书
党的群众路线教育实践活动督导组工作情况汇报
2014/10/28 职场文书
思想品德评语大全
2014/12/31 职场文书
《刺客之王:C罗全景传记》:时代从来不会亏待手艺人
2019/11/28 职场文书