gpt4 book ai didi

php - kohana 测量数据库执行时间

转载 作者:搜寻专家 更新时间:2023-10-31 20:43:28 24 4
gpt4 key购买 nike

Kohana 框架是否有任何方法来衡量(并以某种方式显示)数据库查询执行的分析?在 symfony 1.x 中有一个调试工具栏(见图:http://wiki.netbeans.org/wiki/images/0/0c/Symfony-06e_NB68symfony_es.jpg),在 symfony2 中有一个分析器工具。我在 Kohana 标准版和网络资源中都找不到这样的东西。

我特别使用 kohana 3.2,但我想它在所有 3.x 版本中可能非常相似。

最佳答案

有一个内置的 Kohana profiler .我总是在我的模板 View 中这样使用它:

<?php if (Kohana::$environment !== Kohana::PRODUCTION) : ?>
<div class="footer">
<?php echo View::factory('profiler/stats') ?>
</div>
<?php endif ?>

要显示数据库连接,您需要在 config/database.php 中启用分析(这是存储数据库设置的地方)。您可以显式写入 TRUE 或检查 Kohana::$environment 变量:

return array
(
'default' => array(
'type' => 'mysql',
'connection' => array(
'dsn' => '',
'username' => 'yyy',
'password' => 'zzz',
'persistent' => FALSE,
),
'identifier' => '',
'table_prefix' => '',
'charset' => 'utf8',
'caching' => Kohana::$environment === Kohana::PRODUCTION,
'profiling' => Kohana::$environment !== Kohana::PRODUCTION,
),

您还需要在 Bootstrap 中启用分析。这是我通常做的:

if (Arr::get($_SERVER, 'SERVER_NAME') !== 'localhost') // OR your testing URL
{
Kohana::$environment = Kohana::PRODUCTION;
error_reporting(E_ALL ^ E_NOTICE ^ E_STRICT);
$server_name = 'productions_url';
}
else
{
Kohana::$environment = Kohana::DEVELOPMENT;
error_reporting(E_ALL | E_STRICT);
$server_name = 'testing_url';
}

Kohana::init(array(
'base_url' => $server_name,
'index_file' => FALSE,
'charset' => 'utf-8',
'cache_dir' => APPPATH . 'cache',
'errors' => TRUE,
'profile' => Kohana::$environment !== Kohana::PRODUCTION,
'caching' => Kohana::$environment === Kohana::PRODUCTION,
));

关于php - kohana 测量数据库执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16769113/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com