我有一个应用各种PHP脚本的应用程序。我想知道执行从一个点移动到另一个点需要多长时间(有很多这样的点)。
我正在寻找一个简单的php行,我可以在不修改的情况下插入我的代码中的不同位置并获取输出文件(不生成html),其中显示如下内容:
FILENAME FUNCTION LINENUMBER TIMESTAMP
我开始使用它了:
file_put_contents('/home/default/public_html/debug.log', __FILE__ . "\t" .
__FUNCTION__ . "\t" . __LINE__ . "\t" . microtime(true)."\n", FILE_APPEND);
这很好,但有更好的方法吗?
答案 0 :(得分:1)
要获得一种简单的方法,您可以使用带有trigger_error()
和E_NOTICE
级别的全局PHP错误系统,或error_log()
函数来登录单独的文件。
我是你的情况我会推荐第二种解决方案。
使用trigger_error()
:
<?php
trigger_error("Call will start now", E_NOTICE);
startTheHugeCall();
trigger_error("Call is finished", E_NOTICE);
?>
使用error_log()
:
<?php
error_log("Call will start now", 3, "/var/tmp/debugfile.log");
startTheHugeCall();
error_log("Call is finished", 3, "/var/tmp/debugfile.log");
?>
资源:
答案 1 :(得分:1)
您可以使用XDebug extension生成原始分析数据。它默认会在/ tmp目录中生成文件,您可以使用命令行工具或各种GUI来处理。