-1

我是 Codeigniter 的新手。几天前我在 WAMP (PHP 5.4.3) 上安装了 CI 2.1.3。我创建了我的基本布局并启用了探查器。

启用探查器后,它会给我下一个执行时间:

加载时间:基类 0.0228
控制器执行时间(布局/索引) 0.0239
总执行时间 0.0468

我决定在视图文件中包含下一个以查看分析器的准确度:

$time = microtime(true) - $_SERVER["REQUEST_TIME_FLOAT"];
回声$时间;

上面的输出是:0.064446926116943

现在绝对不等于 CI Profiler。

我错过了什么吗?CI Profiler 准确吗?

4

1 回答 1

1

CI Profiler 实际上并不进行测量,它是基准库。它通过microtime()在添加标记时获取时间戳来衡量每个基准。然后分析器计算开始标记和结束标记之间的差异。

不同之处在于设置第一个基准之前的初始化时间。

您可以在源代码中看到第一个基准测试开始的位置。它位于文件system/core/codeigniter.php的第 108 行:

$BM =& load_class('Benchmark', 'core');
$BM->mark('total_execution_time_start');
$BM->mark('loading_time:_base_classes_start');

当然,在运行该代码之前已经加载了所有已准备好的文件,所以这就是差异的来源。

于 2013-03-22T19:56:24.510 回答