PhpStorm+Xdebug配置單步調試PHP


(一)php安裝xdebug擴展,PHPStorm+XDebug單步調試

(二)PHPStorm配置XDebug

(三)PHPStorm使用XDebug調試

(四)PhpStorm+Xdebug配置單步調試PHP

一、原理:

Xdebug是一款php調試插件,支持在Windows或Linux上進行遠程調試。在php文件運行時,通過TCP協議發送調試信息到遠程端口,IDE在收到調試信息時,可以向Xdebug發送單步運行,中止運行,運行等命令。此插件還可以進行代碼覆蓋率的統計,有興趣的小伙伴可以一起交流。

 

二、需要的環境:

1. 已搭建好的web服務器,本例使用的是Apache+PHP;

2. 一款支持Xdebug遠程調試的IDE,本例使用的是PhpStorm7,IDE下載地址:http://www.jetbrains.com/phpstorm/ ;

3. 一款與你的php對應版本的Xdebug。

 

三、 服務端配置

1. 下載與PHP對應版本的Xdebug:

方法一:

如果你知道所使用的php版本,即可到官網直接下載對應版本的Xdebug,官網地址:http://Xdebug.org/download.php 。

 

方法二:

a. 如果你不知道你的PHP版本,請echo phpinfo();

b. 按Ctrl+A復制整個頁面;

c. 訪問 http://Xdebug.org/wizard.php ,將復制的內容粘貼到文本框中,如下圖。

 

 

d. 點擊頁面下面的“Analyse my phpinfo() output”按鈕,頁面會自動分析你的php版本,如下圖:

 

 

e. 點擊Download后面的鏈接,下載與你機器配置的php相匹配的Xdebug版本。

f. 將下載的dll文件保存到PHP文件路徑中的ext文件夾中。

 

2. 配置php.ini文件,連接Xdebug。

a. 打開PHP文件目錄下的配置文件php.ini

b. 在文件的末尾添加如下設置:

[Xdebug]
zend_extension = "E:\php\ext\php_Xdebug.dll" (值為dll文件的絕對路徑)
Xdebug.remote_enable=1
Xdebug.remote_host=127.0.0.1
Xdebug.remote_port=9000
Xdebug.idekey=phpstorm
Xdebug.remote_autostart=1

注:第一行是加載Xdebug.romote_enable是開啟遠程調試,下面是遠程調試的參數,ip、端口、識別字符串、自動遠程調試。

c. 保存文件,重啟apache。

d. 在CMD里輸入 E:\php\php.exe -m 看到[Xend Modules]中出現如下字樣Xdebug,說明開啟成功。如下圖

 

e. 至此,服務器端配置完畢。

注意:Xdebug就加載成功后,訪問網站可能會會慢一些,原因是因為你開啟了自動遠程調試,每一次訪問都會連接一下定義的ip和端口。

 

四、客戶端配置:

 

1. 打開phpStorm,點擊進入File>Settings>PHP>Servers。

2. 點擊“+”,填寫服務器端的相關信息,name填127.0.0.1,host填127.0.0.1,port填80,debugger選Xdebug,如下圖:

3. 點擊進入File>Settings>PHP>Debug。

4. 看到右側Xdebug選項卡,Debug port填9000,其他默認

5. 點擊進入File>Settings>PHP>Debug>DBGp Proxy

6. IDE key 填 phpStorm(與php.ini文件中的Xdebug.idekey值相同),host 填127.0.0.1,port 填80

7. 點OK退出設置。

8. 點擊phpStorm界面右上角像電話一樣的按鈕,打開監聽,如下圖:

9. 如果變為綠色,則為開啟監聽成功,如下圖:

 

五、開始調試

1. 打開php文件

2. 設置斷點,如下圖:

3. 點擊run>debug,或者按Alt+Shift+F9,如下圖:

4. 在彈出的對話框中選則帶有php圖標的php文件,如下圖:

5. 底部會出現調試信息,如下圖:

6. 按F8執行Step Over(單步進入函數),按F7執行Step Into(單步跳過函數),更多操作如下圖:

7. 鼠標移至參數上之后,會出現當前的值,如下圖:

8. 點擊run>stop或者按Ctrl+F2,停止調試。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2024 CODEPRJ.COM