在ThinkPHP5中進行性能調試

編寫代碼過程當中,咱們須要對程序進行性能調試,而ThinkPHP5提供了一系列的調試方法,具體方法以下php

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配置僅在部署模式下面生效)html

'http_exception_template' => [
    404 => APP_PATH.'404.html',     //定義404錯誤額重定向頁面地址
    401 => APP_PATH.'401.html',     //還能夠定義其餘的HTTP status
]
相關文章
相關標籤/搜索