[英]Print the executed PHP code (Path of code taken)
我有一个包含大量嵌套include和函数的脚本,它们从很多if条件中相互调用。 基本上,这是一场编码梦night。
有什么办法可以“打印” PHP代码? 我的意思是,打印代码的实际流程和脚本从头到尾所采用的路径?
您可以尝试debug_backtrace()或debug_print_backtrace() 。
另外,我建议使用Xdebug 。 它在异常上打印出非常有用的堆栈跟踪 (您可以配置它以打印出每个方法参数和每个局部变量( xdebug.collect_params=4
和xdebug.show_local_vars=on
配置参数)。
PHP无法做到这一点。 您需要在PHP开发计算机上安装xDebug扩展 。 安装后,您可以使用代码覆盖功能来确定已执行了哪些行。
缺少这一点,我将创建一个简单的调试功能以包括在代码的顶部
public function myDebugString($string)
{
file_put_contents('/tmp/debug.log',"$string\n",FILE_APPEND);
return;
}
然后在整个代码中添加对此的调用
myDebugString('Called at ' . __LINE__);
然后尾部创建的日志文件。 完成后,删除调试语句对于您的编辑器来说是一个简单的查找/替换操作。
许多框架都具有调试对象,它们的功能远不止于构建它,但是,如果您要处理独立代码,那么像这样的简单对象就足够了。
看一下代码覆盖率工具。 这使您可以识别运行脚本时实际执行的那些功能和代码行
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.