在之前有讲到Benchmarking Class的用法(参见CodeIgniter类库之Benchmarking Class),他只能显示出两个基准点之间所消耗的时间信息。如果想得到现多的对调试程序有帮助的信息,则可以使用CodeIgniter中的Profile Class,他不仅可以在页面底部显示出我们以及系统定义的所有基准点的时间消耗,同时还会显示出提交的数据和数据库查询的信息,为我们调试程序带来极大的方便。
Profiling Class不需要我们手工的加载,他会被Output Class加载,我们可以通过以下代码来激活他
$this->output->enable_profiler(TRUE);
上面的代码可以在页面最底部显示出我们自定义的以及系统预定义的所有基准点、提交的数据和数据库查询信息(如果页面中有用到的话)。
如果想让自定义的基准点显示在Profiler中,在定义基准点时必须要成对的定义,并且基准点的名称必须以“_start”和“_end”结束。
$this->benchmark->mark('my_mark_start');
// Some code happens here...
$this->benchmark->mark('my_mark_end');
$this->benchmark->mark('another_mark_start');
// Some more code happens here...
$this->benchmark->mark('another_mark_end');
上面这段代码,会在Profiler中显示出两个基准点,一个是“my_mark”,另一个是“another_mark”。