ThinkPHP3.1新特性之G方法的使用

 更新时间:2014年06月19日 15:07:41   投稿:shichen2014  
ThinkPHP3.1的G方法的作用包括标记位置和区间统计两个功能。这篇文章主要介绍了ThinkPHP3.1版G方法的使用,需要的朋友可以参考下

长期以来ThinkPHP都是需要通过debug_start、debug_end方法甚至Debug类才能完成那些调试的功能,而在ThinkPHP3.1版本中,这些复杂的功能被一个简单的G方法取代了,这不可不谓是一次华丽升级。

G方法的作用包括标记位置和区间统计两个功能,下面来看下具体用法:

1.标记位置

G方法的第一个用法就是标记位置,例如:

G('begin');

表示把当前位置标记为begin标签,并且记录当前位置的执行时间,如果环境支持的话,还能记录内存占用情况。可以在任何位置调用G方法标记。

2.运行时间统计

标记位置后,我们就可以再次调用G方法进行区间统计了,例如:

G('begin');
 // ...其他代码段
G('end');
 // ...也许这里还有其他代码
 // 进行统计区间
echo G('begin','end').'s';

G('begin','end') 表示统计begin位置到end位置的执行时间(单位是秒),begin必须是一个已经标记过的位置,如果这个时候end位置还没被标记过,则会自动把当前位置标记为end标签,输出的结果类似于:

0.0056s

默认的统计精度是小数点后4位,如果觉得这个统计精度不够,还可以设置例如:

G('begin','end',6).'s';

可能的输出会变成:

0.005587s

3.内存开销统计

如果你的环境支持内存占用统计的话,还可以使用G方法进行区间内存开销统计(单位为kb),例如:

echo G('begin','end','m').'kb';

第三个参数使用m表示进行内存开销统计,输出的结果可能是:

625kb

同样,如果end标签没有被标记的话,会自动把当前位置先标记为end标签
如果环境不支持内存统计,则该参数无效,仍然会进行区间运行时间统计。

忘掉debug_start、debug_end吧,大道至简,你懂的~

相关文章

  • PHP学习记录之常用的魔术常量详解

    PHP学习记录之常用的魔术常量详解

    这篇文章主要介绍了PHP学习记录之常用的魔术常量,结合实例形式总结分析了PHP魔术常量的功能、原理及常见操作技巧,需要的朋友可以参考下
    2019-12-12
  • thinkPHP5框架实现基于ajax的分页功能示例

    thinkPHP5框架实现基于ajax的分页功能示例

    这篇文章主要介绍了thinkPHP5框架实现基于ajax的分页功能,结合实例形式分析了thinkPHP5框架上进行ajax分页操作的具体步骤、实现代码与相关操作方法,需要的朋友可以参考下
    2018-06-06
  • PHP使用CURL_MULTI实现多线程采集的例子

    PHP使用CURL_MULTI实现多线程采集的例子

    这篇文章主要介绍了PHP使用CURL_MULTI实现多线程采集的例子,CURL_MULTI可以对HTTP进行并发访问,需要的朋友可以参考下
    2014-07-07
  • php实现文件预览功能

    php实现文件预览功能

    这篇文章主要为大家详细介绍了php实现文件预览功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • thinkPHP中验证码的简单实现方法

    thinkPHP中验证码的简单实现方法

    这篇文章主要介绍了thinkPHP中验证码的简单实现方法,结合实例形式分析了thinkPHP验证码的实现原理、步骤与调用技巧,需要的朋友可以参考下
    2016-12-12
  • ajax php传递和接收变量实现思路及代码

    ajax php传递和接收变量实现思路及代码

    在实际应用中会遇到这种情况:ajax与php之间传递和接收变量,为了实现这一功能应用,很多新手朋友们,只能望洋兴叹啊,于是本人搜集整理一些实用技巧,晒出来和大家分享,希望可以帮助你们
    2012-12-12
  • laravel csrf验证总结

    laravel csrf验证总结

    这篇文章主要介绍了laravel csrf验证总结,csrf是laravel表单提交和ajax请求为了安全设置的机制,有感兴趣的同学可以深入学习下
    2021-03-03
  • 详解php与ethereum客户端交互

    详解php与ethereum客户端交互

    本篇文章给大家讲述了php与ethereum客户端交互的相关知识点,对此有需要的朋友可以跟着学习下。
    2018-04-04
  • 基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作

    基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作

    这篇文章主要介绍了基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • Zend Framework入门知识点小结

    Zend Framework入门知识点小结

    这篇文章主要介绍了Zend Framework入门知识点,总结分析了Zend Framework入门学习的知识重点,需要的朋友可以参考下
    2016-03-03

最新评论