在写完 【总结1】PhpStorm配置XDebug(远程)调试PHP 后,发现PhpStorm调试PHP还有一个技巧,如下图所示:

路径:File -> Settings -> Languages & Frameworks -> PHP -> Debug

点击弹出框最下面链接,进入页面:

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

这里有个 PhpStorm 的 “XDebug 书签生成器”

输入 IDE key,保持默认的 PHPSTORM 即可,再点击 “Generate”按钮,输出如下内容:

拖动我常用的2个功能链接“Start debugger”和“Stop debugger”到“书签栏”上,

修改上面2个书签,你会发现

“Start debugger”的内容为:

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

意思是,点击书签时,会产生 一个名为 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 中的 “第四步:设置调试项”都不用做了!

【总结2】PhpStorm利用XDebug调试PHP技巧的更多相关文章

  1. PHPStorm使用XDebug调试

    (一)php安装xdebug扩展,PHPStorm+XDebug单步调试 (二)PHPStorm配置XDebug (三)PHPStorm使用XDebug调试 (四)PhpStorm+Xdebug配置单 ...

  2. phpstorm设置xdebug调试

    phpstorm设置xdebug调试# wamp开发环境安装完成以后,打开网页,输入 :localhost 检测xdebug是否开启 3.若xdebug已开启,请找到你wamp或者phpstudy的安 ...

  3. mac+phpstorm增加xdebug调试

    一.版本信息 mac 10.10.5 phpstorm 10.0.3 xdebug   版本需要与phpstorm匹配,匹配地址 点我匹配  点我查看所有版本 提示:不确定xdebug版本的,把php ...

  4. 十分钟搞定mac下的phpstorm增加xdebug调试

    一.版本信息 mac 10.10.5 php  5.5.38 phpstorm 10.0.3 xdebug   版本需要与php匹配,匹配地址 :点我匹配  点我查看所有版本 提示:不确定xdebug ...

  5. PhpStorm配置Xdebug调试

    安装xdebug 去官网下载对应版本的xdebug扩展 XDEBUG EXTENSION FOR PHP | DOWNLOADS 如何选择正确版本 输出phpinfo()函数的内容 查看输出页面的网页 ...

  6. mac下的phpstorm增加xdebug调试

    zhuan:https://blog.csdn.net/gd_9988/article/details/106248573 tips:不确定xdebug版本的,把phpinfo()的网页源代码全部复制 ...

  7. vscode和phpStorm使用xdebug调试设置

    phpStorm http://www.cnblogs.com/cxscode/p/7045944.html http://www.cnblogs.com/cxscode/p/7050781.html ...

  8. 【总结1】PhpStorm配置XDebug(远程)调试PHP

    配置PhpStorm调试PHP 第一步:配置 XDebug 下载安装XDebug到本地环境,打开php.ini,参考配置如下: [XDebug] zend_extension = "D:\P ...

  9. phpstorm+wamp+xdebug配置php调试环境

    本篇文章主要是:教大家如果搭建一套phpstorm+wamp+xdebug调试php的环境现在大多数的程序员使用的调试方式一般都是echo, var_dump, file_put_contents等其 ...

随机推荐

  1. [转]NET Core中实现一个Token base的身份认证

    本文转自:http://www.cnblogs.com/Leo_wl/p/6077203.html 注:本文提到的代码示例下载地址> How to achieve a bearer token ...

  2. 洛谷11月月赛round.1

    太感动了#2 thwfhk 240 (801ms) 100 100 40   又一张明信片,话说10月的怎么还没收到   P2246 SAC#1 - Hello World(升级版) 题目背景 一天, ...

  3. winform修改、打开窗体、构造函数传值

    制作登录窗体: 制作一个登陆窗体,实现点击按钮关闭此窗体并打开另一个窗体 直接在按钮点击事件中,实例化一个想要打开的窗体 使用show方法打开,并把登陆窗体的visible属性改为false Form ...

  4. Jenkins学习三:介绍一些Jenkins的常用功能

    Jenkins其实就是一个工具,这个工具的作用就是调用各种其他的工具来达成你的目的. 1.备份.迁移.恢复jenkins 首先找到JENKINS_HOME,因为Jenkins的所有的数据都是以文件的形 ...

  5. LeetCode "419. Battleships in a Board"

    The follow-up question is fun: "Could you do it in one-pass, using only O(1) extra memory and w ...

  6. 快速部署tomcat项目的Shell脚本

    为了做集群测试,在每台机器上装了3个tomcat,每次发布项目的时候都要反复敲一些命令,重启tomcat之前先检查tomcat进程有没有停掉,没有还要手动kill该进程. 发布次数多了,操作就比较繁琐 ...

  7. PHP操作MySQL数据库5个步骤

    PHP操作MySQL数据库一般可分为5个步骤:1.连接MySQL数据库服务器:2.选择数据库:3.执行SQL语句:4.关闭结果集:5断开与MySQL数据库服务器连接. 1.用mysql_connect ...

  8. .Net配置中心-服务端/客户端

    服务端 管理应用,一个应用对应一个站点. 管理应用下的配置. 在保存配置的时候,会更新应用的版本号. 客服端 其他站点引用DLL,并在Global的App_Start中调用ConfigCenter的I ...

  9. mariadb

    MariaDB数据库管理系统是MySQL的一个分支

  10. go 数组(array)、切片(slice)、map、结构体(struct)

    一 数组(array) go语言中的数组是固定长度的.使用前必须指定数组长度. go语言中数组是值类型.如果将数组赋值给另一个数组或者方法中参数使用都是复制一份,方法中使用可以使用指针传递地址. 声明 ...