1. 程式人生 > >eclipse-phpstudy下使用xdebug除錯

eclipse-phpstudy下使用xdebug除錯

一、配置前說明:

1phpStudy集成了XDebug擴充套件,所以不用單獨下載XDebug 
2
、開啟XDebug擴充套件:其它選項選單 > PHP擴充套件 > Xdebug

二、配置步驟:

phpStudy當前版本:php5.6

修改php.ini檔案:主要是phpstudy的這個配置

; 註釋掉原配置

;[XDebug]

;xdebug.profiler_output_dir="D:\myworkVIP\phpstudy\tmp\xdebug"

;xdebug.trace_output_dir="D:\myworkVIP\phpstudy\tmp\xdebug"

;zend_extension="D:\myworkVIP\phpstudy\php\php-5.5.38\ext\php_xdebug.dll"

;zend_extension="D:\myworkVIP\phpstudybak\php\php-5.5.38\ext\php_xdebug.dll"

 

; 自定義XDebug

[XDebug]

zend_extension="D:\myworkVIP\phpstudy\php\php-5.5.38\ext\php_xdebug.dll"

;是否允許Xdebug跟蹤函式呼叫,跟蹤資訊以檔案形式儲存,預設值為0

xdebug.auto_trace=1

;是否允許Xdebug跟蹤函式引數,預設值為0

xdebug.collect_params=1

;是否允許Xdebug跟蹤函式返回值,預設值為0

xdebug.collect_return=1

;函式呼叫跟蹤資訊輸出檔案目錄,預設值為/tmp

xdebug.trace_output_dir="D:\myworkVIP\phpstudy\tmp\xdebug"

;效能分析檔案的存放位置,預設值為/tmp

xdebug.profiler_output_dir="D:\myworkVIP\phpstudy\tmp\xdebug"

;開啟xdebug的效能分析器,以檔案形式儲存,這項配置是不能以ini_set()函式配置的,預設值為0

xdebug.profiler_enable= 1

;效能分析檔案的命名規則,預設值為cachegrind.out.%p

xdebug.profiler_output_name= "cachegrind.out.%t.%p"

xdebug.remote_enable= 1

;用於zend studio遠端除錯的應用層通訊協議

xdebug.remote_handler= "dbgp"

xdebug.idekey =PHPSTORM

xdebug.remote_host= "127.0.0.1"

xdebug.remote_port= 9000

其他看原文連結 轉載地址

https://www.cnblogs.com/lipcblog/p/6995115.html

http://blog.csdn.net/zz_buddha/article/details/54096000

設定phpstudy 


 

執行www檔案下phpinfo.php檔案

有上圖資訊說明配置成功

 

 

 

Eclipse端配置執行環境Xdebug

 

EClipse端的配置其實就是把我們的PHP執行環境Xdebug和PHP原始碼檔案都關聯到Eclipse這個IDE上來,這樣當我們在遊覽器中輸入一個URL時,Eclipse就可以通過Xdebug攔截PHP執行環境中的實時執行資訊,並將執行停止在PHP原始碼上設定的斷點處。

方法/步驟

·              EClipse端的配置其實就是把我們的PHP執行環境Xdebug和PHP原始碼檔案都關聯到Eclipse這個IDE上來,這樣當我們在遊覽器中輸入一個URL時,Eclipse就可以通過Xdebug攔截PHP執行環境中的實時執行資訊,並將執行停止在PHP原始碼上設定的斷點處。

·               (1)首先將PHP執行環境關聯到Eclipse上來。開啟選單Windows→Preferences…,在左邊樹選單中選擇選單項PHP→PHPExecutables,單擊“”Add…“按鈕,如圖所示

·        說明:NamePHP執行環境的名稱,填入一個比較好記得名稱就行,如PHP5.5。

Executable path PHP執行檔案(PHP)的絕對路徑。

PHP ini file PHP配置檔案(php.ini)的絕對路徑。

SAPI Type 選擇CLI(命令列模式)。PHP debugger 選擇Xdebug。

·        這樣我們就將PHP執行環境配置進來了。接下來,要將原始碼PHP的位置也設定進來。

(2)在Preferences對話方塊的左邊樹選單中選擇選單項PHP→PHPServers,單機”NEW“按鈕,在server選項卡的name裡面隨便輸入一個好記的名稱,下面就是我們網站的根地址,也就是入口地址,我們的是http://localhost;在Path Mapping選項卡里面,就要輸入我們的網站根地址所對應的真實的檔案實體地址,也就是我們的網站在本地計算機上的根目錄位置。這樣,Eclipse才能將遊覽器中輸入的URL對應到本地目錄上的一個PHP原始碼我呢見上去,如圖所示。

·        (3)最後,還需要配置Xdebug。在Preferences對話方塊的左邊樹選單中選擇選單項PHP→Debug→Installed Debuggers。Eclipse預設配置了Zend Debugger和Xdebug兩個配置項,選擇Xdebug項,單擊”Configure“,在新彈出的視窗配置Xdebug和Port為php.ini中配置的Xdebug監聽的埠號,預設是9000。同時將accept remote seesion(JIT)設定為any,這表示Xdebug將可以接受任何機器的連線請求。如果這裡設定預設的OFF,那麼當你在遊覽器中輸入要除錯的URL時,Eclipse中設定的斷點根本不會停下來。

·        (4)最後,選中PHP→Debug節點,在右側按照如圖所示設定,將我們的Xdebug、PHP執行環境和PHP原始碼檔案關聯到一起。同時注意為了避免中文亂碼問題,要將編碼都統一設定為UTF-8。

·        到這裡,我們的PHP除錯環境就好了,我們可以來測試一下這個除錯環境是否好用。新建一個PHP專案,並新增一個簡單的PHP檔案,在裡面設定幾個斷點,然後右鍵點選該PHP檔案,選擇debug as→PHP Script。Eclipse跳轉到Debug透視視窗,如圖所示。


 

Eclipse+xdebug除錯PHP總是在首行自動斷點解決方法

問題描述:

使用Eclipse+PDT+xdebug除錯PHP程式時,總是在程式的第一行(首行)自動斷點,不方便除錯。

 

解決方法:

分別在下面3個位置配置,取消 Break at First Line

·        Window -> Prefrences ->PHP -> Debug

·        Run -> DebugConfigurations -> PHP Web Application -> <要除錯的項> -> 右邊選擇Debugger標籤

·        Project -> Properties-> PHP Debug

設定完成後如果不行就重啟Eclipse

 

轉載地址:

http://stackoverflow.com/questions/9071397/eclipse-and-zend-debugger-breaks-in-the-first-line-always-despite-having-unchec

http://stackoverflow.com/questions/11324156/prevent-xdebug-to-break-at-first-line-of-index-file

 

使用

打斷點

執行web程式

執行web服務 CLI是執行檔案

有時會在入口檔案停止手動繼續

登入-(重新停在入口檔案點選繼續)-訪問方法聽到斷點處



上面參考資料都有原轉載連結,