在ThinkPHP5中进行性能调试

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

编写代码过程中,我们需要对程序进行性能调试,而ThinkPHP5提供了一系列的调试方法,具体方法如下

think\Debug 中提供的调试方法

  • getUseTime($dec = 6)
    • 统计从开始到统计时的时间(微秒)使用情况 返回值以秒为单位
    • echo Debug::getUseTime();
  • getUseMem($dec = 2)
    • 统计从开始到统计时的内存使用情况
    • echo Debug::getUseMem();
  • getFile($detail = false)
    • 获取文件加载信息
    • dump(Debug::getFile(true));
  • dump($var, $echo = true, $label = null, $flags = ENT_SUBSTITUTE)
    • 浏览器友好的变量输出
  • inject(Response $response, &$content)
    • 调试信息注入到响应中
  • remark($name, $value = '')
    • 记录时间(微秒)和内存使用情况
  • getRangeTime($start, $end, $dec = 6)
    • 统计某个区间的时间(微秒)使用情况 返回值以秒为单位
  • getThroughputRate()
    • 获取当前访问的吞吐率情况
    • echo Debug::getThroughputRate();
  • getRangeMem($start, $end, $dec = 2)
    • 记录区间的内存使用情况
  • getMemPeak($start, $end, $dec = 2)
    • 统计区间的内存峰值情况
Debug::remark('begin');
sleep(1);
Debug::remark('end');

echo Debug::getRangeTime('begin','end').'s';
echo Debug::getThroughputRate('begin', 'end', 6);
echo Debug::getRangeMem('begin', 'end', 6);
echo Debug::getMemPeak('begin', 'end', 6);

助手函数debug

debug('begin');
sleep(1);
debug('end');
echo debug('begin', 'end', 6);

调试执行的SQL语句

User::get(1);
echo User::getLastSql();

$User = new User();
$User->fetchSQL(true)->find();

异常页面

在配置文件(config.php)中添加如下代码: (注: ttp_exception_template配置仅在部署模式下面生效)

'http_exception_template' => [
    404 => APP_PATH.'404.html',     //定义404错误额重定向页面地址
    401 => APP_PATH.'401.html',     //还可以定义其他的HTTP status
]

转载于:https://my.oschina.net/u/616147/blog/1790334

你可能感兴趣的:(在ThinkPHP5中进行性能调试)