Php Yii2:如何调试控制台命令?

Php Yii2:如何调试控制台命令?,php,debugging,console,yii2,command-line-interface,Php,Debugging,Console,Yii2,Command Line Interface,Yii2调试器似乎只适用于web请求。如何调试控制台命令(CLI) 例如,我需要查看在控制台命令期间执行的SQL语句…使用记录器: 'log' => [ 'targets' => [[ ... ], [ 'class' => 'yii\log\FileTarget', 'logFile' => '@runtime/logs/profile.log', 'logVars' => [], 'levels' => ['prof

Yii2调试器似乎只适用于web请求。如何调试控制台命令(CLI)

例如,我需要查看在控制台命令期间执行的SQL语句…

使用记录器:

'log' => [
'targets' => [[
    ...
], [
    'class' => 'yii\log\FileTarget',
    'logFile' => '@runtime/logs/profile.log',
    'logVars' => [],
    'levels' => ['profile'],
    'categories' => ['yii\db\Command::query'],
    'prefix' => function($message) {
        return '';
    }
]]
]


我编写了对现有yii2调试的扩展来实现这个结果。如果您发现一些问题,请使用和lmk问题。

另一个属性
'microtime'=>true,
有助于查看SQL性能问题。