phpstorm 配置 xdebug斷點除錯
前言
php是指令碼型程式 每次出錯都要手動exit斷點程式不是很方便
哪裡有需求哪裡就有生產,Xdebug可以實現對php的斷點除錯。下面將我個人的安裝經歷分享給大家。
執行環境 windows 、lamp、phpstorm 、chrome (配置方法一樣 Ubuntu也通用)
一、首先安裝xdebug
安裝xdebug比較簡單 ,執行php -i >phpinfo.txt 或者 echo phpinfo();將全部資訊貼到https://xdebug.org/wizard.php這個網站提示的文字域中點選
如下圖紅色的框是網站提示的安裝步驟,黃色的框是我已安裝的資訊(可以忽略)。
補充在編輯php.ini檔案的時候多新增幾行
[Xdebug] zend_extension = D:\install\wnmp\php-5.4.45-nts-Win32-VC9-x86\ext\php_xdebug-2.4.1-5.4-vc9-nts.dll//這個xdebug 已經提示了 可以不新增 其他的按照自己的新增 xdebug.idekey="PHPSTORM" xdebug.remote_handler = "dbgp" xdebug.remote_mode = "req" xdebug.remote_host=127.0.0.1 xdebug.remote_enable=on xdebug.remote_port = 9000 //這是設定埠 可以改 只要下面這是phpstorm 一致就可以 xdebug.remote_autostart = no
二、安裝chrome xdebug helper外掛
開啟 chrome的webstore搜尋 xdebug 我已經添加了。需要FQ 可以下個vpn 藍燈 慕風都可以 或者配置host
安裝完之後 瀏覽器會有一個小甲蟲 右擊點選選項 選擇phpstorm 點選save退出
備註:
安裝完 可以列印phpinfo 檢視xdebug資訊 ,或者php -v 檢視下有沒有xdebug資訊
三、配置phpstorm
1、servers設定
選單欄 file->setting->php->servers(找不到可以搜尋server就出來了)
此處注意,不要勾選“Use path mappings(......)”,因為在生產環境(remote server)開啟xdebug是非常消耗php效能的,而且還可能導致
phpstorm報錯:Remote file path 'XXX' is not mapped to any file path in project
2、php設定 選擇自己的php版本(注如果遇到圖2這種情況點選標記的按鈕找到自己的php.exe檔案即可)
3 設定debug 勾選一下 會忽略埠衝突等資訊
4 設定dbgp
IDE key 是上面php.ini裡面設定的key
host、port 也是上面設定的host 要一致
5 編輯結構選擇一下自己配置的域名 startUrl 可以根據自己的專案配置 我的域名已經指向專案根目錄了 所有直接是/
四、啟用xdebug
1、點選phpstorm右上角的電話 綠色波紋就是開始監聽了
2、右擊瀏覽器右上角的小甲蟲 選擇debug
3、設定斷點
4、訪問設定斷點的控制器 phpstorm會彈出除錯資訊 可以點選小綠三角 除錯下一個斷點
五、其他情況說明
如果出現端口占用等提示 那就編輯php.ini換個埠對應的 file->setting->php-> debug 也要換掉,然後重新啟動下php 再除錯看看。
附上phpstorm 官方配置說明:
https://blog.jetbrains.com/webide/2011/03/configure-php-debugging-in-phpstorm-2-0/