【總結2】PhpStorm利用XDebug調試PHP技巧

在寫完 【總結1】PhpStorm配置XDebug(遠程)調試PHP 後,發現PhpStorm調試PHP還有一個技巧,以下圖所示:javascript

路徑:File -> Settings -> Languages & Frameworks -> PHP -> Debugphp

點擊彈出框最下面連接,進入頁面:html

http://www.jetbrains.com/phpstorm/marklets/java

這裏有個 PhpStorm 的 「XDebug 書籤生成器瀏覽器

輸入 IDE key,保持默認的 PHPSTORM 便可,再點擊 「Generate」按鈕,輸出以下內容:cookie

拖動我經常使用的2個功能連接「Start debugger」和「Stop debugger」到「書籤欄」上,dom

修改上面2個書籤,你會發現phpstorm

Start debugger」的內容爲:工具

javascript:(/** @version 0.5.2 */function() {document.cookie='XDEBUG_SESSION='+'PHPSTORM'+';path=/;';})()this

意思是,點擊書籤時,會產生 一個名爲 XDEBUG_SESSION,值爲 PHPSTORM 的 Cookie對象,以下圖所示:

不過,這個Cookie的有效期爲Session,即瀏覽器一關閉就自動消除,下次要調試還的點「Start debugger」,乾脆把Cookie的有效期改成365天吧,修改後的代碼以下:

javascript:(function() {var date = new Date(); date.setTime(date.getTime() + (365 * 24 * 60 * 60 * 1000)); document.cookie = 'XDEBUG_SESSION=' + 'PHPSTORM' + '; path=/; expires=' + date.toUTCString();})()

 

Stop debugger」的內容爲:

javascript:(/** @version 0.5.2 */function() {document.cookie='XDEBUG_SESSION='+''+';expires=Mon, 05 Jul 2000 00:00:00 GMT;path=/;';})()

意思是,點擊書籤時,會清除名爲 XDEBUG_SESSION 的 Cookie對象

 

 

接下來調試PHP就更加簡單了,仍是以上一節提到的頁面 http://127.0.0.4:8088/home/Test/test 爲例吧!

第一步:在瀏覽器中打開「調試頁面」,如 http://127.0.0.4:8088/home/Test/test

第二步:點擊工具欄上的「電話按鈕」,打開 PHP Debug Connections 的監聽;

 

第三步:在當前「調試頁面」(http://127.0.0.4:8088/home/Test/test)中,點擊書籤欄上的「Start debugger」書籤;

主要是讓Start debugger產生的Cookie的domain值,跟當前頁面的domain保持一致。

 

第四步:在調試的PHP頁面中設置好PHP斷點,而後刷新「調試頁面」,立馬進入斷點處。

 

 

注意:其餘頁面的調試,就能夠直接設置好斷點,而後在瀏覽器中回車瀏覽便可進入斷點調試,不須要再點擊「電話按鈕」和「Start debugger」了!

也能夠「Debug this page」書籤來調試當前頁。

 

也就是說,上一篇文章 【總結1】PhpStorm配置XDebug(遠程)調試PHP 中的 「第四步:設置調試項」都不用作了!

相關文章
相關標籤/搜索