我想在页面的页脚添加一些统计数据,类似于“184ms/6/10ms”。
其中184ms是页面生成时间,6是查询计数,10是数据库查询所花费的时间。
我可以计算出页面生成时间,但如何获得不符合理论的数据库统计信息?
当然,这是在应用程序环境中运行时的情况,我很欣赏在 app_dev 中时,可能有一种方法可以在 symfony 分析器运行时获取它。
任何帮助,将不胜感激。
您可以使用 DebugStack 对象来完成此操作。
您将拥有一个包含每个查询及其各自执行时间的数组。
例子 :
$doctrine = $this->get('doctrine');
$doctrineConnection = $doctrine->getConnection();
$stack = new \Doctrine\DBAL\Logging\DebugStack();
$doctrineConnection->getConfiguration()->setSQLLogger($stack);
$em = $doctrine->getManager();
... // Perform query
var_dump($stack);
$stack 示例的 Var 转储:
Doctrine\DBAL\Logging\DebugStack Object
(
[queries] => Array
(
[1] => Array
(
[sql] => SELECT t0.id AS id1 FROM Test t0
[params] => Array
(
)
[types] => Array
(
)
[executionMS] => 0.00018191337585449
)
[2] => Array
(
[sql] => SELECT t0.id AS id1 FROM Test t0
[params] => Array
(
)
[types] => Array
(
)
[executionMS] => 0.00016307830810547
)
)
[enabled] => 1
[start] => 1426590420.2278
[currentQuery] => 2
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)