在 Yii 的 Db-component 中有一个有用的方法 getStats
$sql_stats = YII::app()->db->getStats();
echo $sql_stats[0] //the number of SQL statements executed
echo $sql_stats[1] //total time spent
Yii2 有获取这些信息的方法吗?
最佳答案
这里是 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;
}
否则,您将根据执行此命令的时刻获取信息。
官方文档:
关于php - Yii2 db getStats(db查询数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29094673/