本文記錄在 LNMP 環境下,於 Sublime Text 3 安裝並設定 XDebug 進行 PHP 程式碼單步除錯的完整流程,包含伺服器端擴展安裝、設定檔調整、編輯器外掛安裝與常用快捷鍵操作。
Ubuntu/Debian 系統可直接使用 apt 安裝:
sudo apt-get update
sudo apt-get install php5-xdebug
安裝完成後,系統會自動建立預設設定檔 /etc/php5/mods-available/xdebug.ini。編輯該檔案,加入以下關鍵設定以啟用遠端除錯:
zend_extension="/usr/lib/php5/20131226/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_connect_back=1
xdebug.remote_autostart=0
xdebug.profiler_enable=1
xdebug.profiler_output_dir=/tmp
xdebug.trace_output_dir=/tmp
修改完成後重啟 PHP-FPM 使設定生效:
sudo /etc/init.d/php5-fpm restart
Install Package,搜尋並安裝 XDebug Client(或 SublimeXDebug)。Tools > XDebug 選項。test.php,寫入簡單迴圈並設定斷點。https://127.0.0.1/test.php,請求會觸發 XDebug 連線回 Sublime Text。XDebug 產生的 cachegrind.out.* 檔案可用 KCachegrind (Linux) 或 WinCacheGrind (Windows) 圖形化分析,找出效能瓶頸(如過多 SQL 查詢、函式呼叫耗時)。