CodeIgniter教程:应用程序分析
当构建一个web应用程序时,我们非常关心网站的性能,比如控制器执行所花费的时间和使用的内存。不仅仅是考虑到性能,我们通常还需要查看类似POST数据、数据库查询、会话等信息,用于开发时进行调试。CodeIgniter通过分析一个应用程序使这项工作变得更加容易。
启用分析
要启用应用程序分析,只需在控制器的任何方法中执行下面给出的命令。
$this->output->enable_profiler(TRUE);
启用分析后,可以在页面底部看到分析报告。
禁用分析
要禁用应用程序的分析,只需在控制器的任何方法中执行下面给出的命令。
$this->output->enable_profiler(FALSE);
启用/禁用区块分析器
分析可以在区块的基础上完成。通过设置true或false,可以启用或禁用对特定区块的分析。如果您想在应用程序上设置分析,那么您可以在位于application/config/profiler.php中进行
例如,以下命令将为整个应用程序启用分析数据库queries。
$config['queries'] = TRUE;
下面是支持的参数和说明,可以在config数组中设置该参数来启用或禁用特定的分析。
benchmarks:基准点的运行时间和总执行时间,默认TRUE
config:CodeIgniter配置变量,默认TRUE
controller_info:请求的控制器类和方法,默认TRUE
get:请求中传递的GET数据,默认TRUE
http_headers:当前请求的超文本传输协议头,默认TRUE
memory_usage:当前请求消耗的内存量,默认TRUE
post:请求中传递的POST数据,默认TRUE
queries:已执行的所有数据库查询的列表,包括执行时间,默认TRUE
uri_string:The URI of the current request,默认TRUE
session_data:当前会话中存储的数据,默认TRUE
query_toggle_count:查询块默认为隐藏的查询数,默认25
可以通过在控制器中使用set_profiler_sections() 来覆盖application/config/profiler.php文件中的profiler配置,如下所示。
$sections = array( 'config' => TRUE, 'queries' => TRUE ); $this->output->set_profiler_sections($sections);