【总结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 中的 “第四步:设置调试项”都不用作了!

相关文章
相关标签/搜索