怎樣在重構PHP專案時快速梳理程式碼執行流程
阿新 • • 發佈:2019-02-13
最近在用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、GO相關踩坑實踐技巧請關注我的公眾號:PHP架構師