Debian系統PHP代碼調試指南(以Xdebug為核心)
Xdebug是Debian下最主流的PHP調試工具,支持斷點調試、變量監控、函數跟蹤等功能。安裝步驟如下:
sudo apt update
sudo apt install php-xdebug
(若使用PHP 8.x,需替換為php8.x-xdebug
,如php8.1-xdebug
)。Xdebug的配置需根據PHP運行環境(CLI/Apache/Nginx/PHP-FPM)調整php.ini
路徑:
/etc/php/{version}/apache2/php.ini
/etc/php/{version}/fpm/php.ini
/etc/php/{version}/cli/php.ini
在php.ini
末尾添加以下配置(關鍵參數說明見注釋):
[Xdebug]
; 啟用Xdebug擴展(路徑通常自動識別,無需手動指定)
zend_extension=xdebug.so
; 設置調試模式為'debug'(必需)
xdebug.mode=debug
; 指定IDE監聽的主機地址(默認本地)
xdebug.client_host=127.0.0.1
; 指定IDE監聽的端口(默認9003,需與IDE一致)
xdebug.client_port=9003
; 自動啟動調試會話(可選:'yes'表示所有請求都觸發,'trigger'表示通過Cookie/GET參數觸發)
xdebug.start_with_request=yes
; 可選:設置IDE標識(如PHPSTORM、VSCode),用于區分不同工具
xdebug.idekey=PHPSTORM
修改完成后,保存文件。
sudo systemctl restart apache2
sudo systemctl restart php{version}-fpm && sudo systemctl restart nginx
(將{version}
替換為實際PHP版本,如8.1
)。{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003,
"pathMappings": {
"/var/www/html": "${workspaceFolder}" // 將服務器項目路徑映射到本地工作區
}
}
]
}
File → Settings → Languages & Frameworks → PHP → Servers
,點擊“+”添加服務器:
Local
(自定義)localhost
80
(或Nginx的443端口)/var/www/html
)映射到本地項目路徑。Settings → PHP → Debug
,確?!癤debug”選項已啟用,端口設置為9003
。$result = $db->query($sql);
)。xdebug.start_with_request=yes
,直接訪問頁面(如http://localhost/index.php
)即可觸發。trigger
,需在瀏覽器中安裝Xdebug Helper插件(Chrome/Firefox),點擊插件圖標開啟調試模式后訪問頁面。ini_set('display_errors', 1); ini_set('log_errors', 1); ini_set('error_log', '/var/log/php_errors.log');
,將錯誤信息輸出到指定文件。var_dump($array);
),適合簡單調試。error_log("Debug: ".$variable);
將關鍵信息寫入日志,避免影響頁面顯示。通過以上步驟,即可在Debian系統下使用Xdebug完成PHP代碼的調試。根據實際需求選擇IDE(VS Code適合輕量級調試,PhpStorm適合大型項目),并靈活運用輔助技巧,能快速定位和解決問題。