怎样在重构PHP项目时快速梳理代码执行流程

别来无恙 提交于 2019-12-05 20:55:16

最近在用Go重构一个PHP项目,代码写的有点乱,也没文档,没注释,总之就是功能基本靠猜, 然后我找了个小工具快速理清代码执行流程,帮助自己理解代码逻辑。

首先打开xdebug的分析器

xdebug.profiler_enable = 1
xdebug.profiler_output_dir = /tmp

分析器有什么用,有兴趣可以去xdebug官网自己去看。

但是xdebug分析器输出的内容对人是不友好的,使用工具才能方便的看到自己想要的,这里我们使用webgrind帮助我们查看这个内容。

webgrind依赖python和graphviz,安装完成之后修改webgrind的config.php文件

   /**
     * Path to python executable
     */
    static $pythonExecutable = '/usr/bin/python';

    /**
     * Path to graphviz dot executable
     */
    static $dotExecutable = '/usr/local/bin/dot';

然后在webgrind目录下执行

php -S 127.0.0.1:19000 //使用php内置http服务器,php version >= 5.4

webgrind可以生成流程图和分析每个方法函数的执行时间,这里我用CodeIgniter做个例子,展示下效果 php flowphp call

更多架构、PHP、GO相关踩坑实践技巧请关注我的公众号:PHP架构师

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!