最近在用Go重构一个PHP项目,代码写的有点乱,也没文档,没注释,总之就是功能基本靠猜, 而后我找了个小工具快速理清代码执行流程,帮助本身理解代码逻辑。php
首先打开xdebug的分析器python
xdebug.profiler_enable = 1 xdebug.profiler_output_dir = /tmp
分析器有什么用,有兴趣能够去xdebug官网本身去看。git
可是xdebug分析器输出的内容对人是不友好的,使用工具才能方便的看到本身想要的,这里咱们使用webgrind帮助咱们查看这个内容。github
webgrind依赖python和graphviz,安装完成以后修改webgrind的config.php文件web
/** * 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、GO相关踩坑实践技巧请关注个人公众号:PHP架构师函数