Firefox+PHPStorm 8+XDebug單步調試

1. 須要在php.ini中填寫xdebug的相關配置;php

(在WAMPServer之中,須要左鍵單擊WAMPServer的圖標,經過菜單編輯php.ini配置;若直接改寫php.ini,會被WAMPServer所覆蓋)chrome

在php.ini的最末尾,做以下設置:瀏覽器

;(以實際路徑爲準)服務器

zend_extension = "d:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11-x86_64.dll"ide

[xdebug]工具

xdebug.remote_enable = On測試

xdebug.profiler_enable = offdebug

xdebug.profiler_enable_trigger = off3d

xdebug.profiler_output_name = cachegrind.out.%t.%p調試

;(以實際路徑爲準)

xdebug.profiler_output_dir = "d:/wamp/tmp"

xdebug.show_local_vars=0

xdebug.idekey = "PHPSTORM"

僅使用XDebug的remote debug功能,不使用profiler功能;idekey用於和開發環境(如「PHPStorm」,「Zend Studio」)、瀏覽器進行通信(聽說用Firefox比較多,調試擴展穩定;chrome的調試擴展很差用)。

2. 進入PHPStorm的File->Setting,在左側找到PHP->Servers,添加一個Web開發服務器。Host與Port填寫開發服務器的實際地址,實際服務端口。Debugger選擇XDebug。

clip_image002

3. 在Settings對話框中找到PHP->Debug,確保PHPStorm監聽XDebug的調試端口9000.不作其餘的修改。

(若是用了phpfpm,或手工配置了fastcgi,有可能會出現9000端口占用衝突;此時須要從新分配端口)

clip_image003

4. 進入PHP->Dbgp Proxy,填寫IDE key爲」PHPSTORM」,Host爲本機,端口爲80:

clip_image005

5. 進入「Web Browsers」,只勾選Firefox,其餘的瀏覽器通通去掉;

clip_image007

6. 新建一個工程,加上一個測試用的php文件,確保它可以正確地上傳到服務器

(在Tools->Deployment->Configuration對話框中,Deployment path不能置空,至少須要設爲「/」;設爲空,沒法部署,Deployment顯示爲灰色)

clip_image009

7. 勾選」Run->Start Listening for PHP Debug Connection」,IDE開始監聽調試端口;

clip_image011

8. 在Firefox中安裝PHP調試擴展「The easiest Xdebug 2.1.1-signed」,重啓FireFox瀏覽器,爲調試擴展設置以下參數:

clip_image012

在此與php.ini保持一致,不開啓trace和profiler。

9. 在FireFox瀏覽器右側工具欄中會多出三個圖標,按下「爬蟲」圖標啓用調試(任何一個選項卡均可以用):

clip_image014

10. 在PHPStorm之中找到懸浮的「火狐」圖標,點擊它(也能夠點擊上方的箭頭,Run xxx.php),就能看到斷點裏打了一個勾,表示斷點已生效。在下方的窗口裏單擊「單步步過」,能觀察到斷點裏的勾消失掉。反應速度有些慢。

clip_image016

此時已可以單步調試PHP代碼,Enjoy it!

配置好以後,若是須要單步調試,在PHPStorm中勾選「Run->Start Listenning for PHP Debug Connections」,在Firefox瀏覽器中點擊「爬蟲」圖標,在PHPStorm中運行須要調試的頁面便可(不須要經過PHPStorm的Debug啓動模式,直接Run)。

相關文章
相關標籤/搜索