Yii2 db getStats(db查询数)

Yii2 db getStats (db queries number)

Db-component Yii 中有一个有用的方法 getStats

$sql_stats = YII::app()->db->getStats();
echo $sql_stats[0] //the number of SQL statements executed
echo $sql_stats[1] //total time spent

Official documentation link

Yii2中有获取这些信息的方法吗?

如果启用调试工具栏,您可以获得更多信息,比这要好得多。您还可以启用日志记录,这也应该为您提供更多信息。

有关调试工具栏的更多信息,请点击此处http://www.yiiframework.com/doc-2.0/ext-debug-index.html and more info about the logging here http://www.yiiframework.com/doc-2.0/guide-runtime-logging.html

这里是 Yii 2 的等价物:

$profiling = Yii::getLogger()->getDbProfiling();

$profiling[0] 包含数据库查询的总数,$profiling[1] - 总执行时间。

请注意,如果您想在请求结束时获取有关 所有 查询的信息,您应该在正确的位置执行此代码,例如在 afterAction():

public function afterAction($action, $result)
{
    $result = parent::afterAction($action, $result);

    $profiling = Yii::getLogger()->getDbProfiling();

    ...

    return $result;
}

否则你将根据执行该命令的时刻获取信息。

官方文档: