计算在页面上执行的查询数

时间:2013-01-07 12:38:10

标签: cakephp cakephp-2.0 cakephp-2.1

是否有一种简单的方法来计算在CakePHP页面上执行的所有查询?

我只需要一个数字,表示从我的AppController开始执行了多少查询到页面渲染的结尾。

1 个答案:

答案 0 :(得分:2)

这基本上是对sql_dump元素的编辑。它位于lib / cake / view / elements中。 无论如何,这是你的起点。

$sources = ConnectionManager::sourceList();
$logs = array();
foreach ($sources as $source):
    $db = ConnectionManager::getDataSource($source);
    if (!method_exists($db, 'getLog')):
        continue;
    endif;
    $logs[$source] = $db->getLog();
endforeach;

$queries = 0;
foreach ($logs as $source => $logInfo):
    $queries += $logInfo['count'];
endforeach;