首先配置好xdebug

在php.ini里面加入以下配置(修改完注意重启apache或nginx):

  1. [xdebug]

  2. zend_extension="/usr/local/opt/php55-xdebug/xdebug.so"

  3. xdebug.remote_enable=On

  4. xdebug.remote_autostart=Off

  5. xdebug.remote_host="localhost"

  6. xdebug.remote_port=9002

  7. xdebug.remote_handler="dbgp"

  8. ;可以是任意Key,这里设定为PHPSTORM

  9. xdebug.idekey="PHPSTORM"

注:我所用的是mac的brew-emp(nginx+mysql+php),它的xdebug配置文件不在php.ini,而是在/usr/local/etc/php/5.5/conf.d里的ext-xdebug.ini中

配置phpstorm xdebug监听的服务器以及php应用程序(项目)

phpstorm右侧的Edit Configurations

接上图:

如下图,填写php网站的名称,以及Server(一开始没有server,需要先添加(看下图),host就是你虚拟主机名,端口一般是80除非你虚拟主机配置的时候特别指定了其他端口)

配置好之后,如下图所示:

注:Start URL看具体情况,我是用nginx的,www.test.com是在浏览器上可以直接访问到我网站主页的,所以我就直接填个斜线“/”就行,如果你要具体指定到某个文件,那就自己填上去。

最后应用(apply)——保存(save)。

设置phpstorm xdebug监听的端口

(端口号只要是系统没用到的就行,但是要跟前面xdebug配置文件"xdebug.remote_port=9002"中的端口号相同),设置方法如下:

在phpstorm的设置里,搜索debug,找到Languages & Frameworks——PHP——Debug

上一步点击Debug进入如下界面:

其他选项可以看着选,不过注意Debug port要和xdebug的配置里的端口一样:

浏览器中安装xdebug插件

1、谷歌浏览器安装Xdebug helper插件

2、火狐浏览器安装easy Xdebug 插件

搜索到两个easy debug,用比较新的那个

如下图,点击小虫,当小虫下方有个红色减号的时候,表示开始监听debug,当下图的正方形为红色的时候(鼠标点击可切换状态),会在cookie中记录xdebug profile

非监听状态

监听状态:(只要小虫有个减号就表示监听状态,此时正方形不一定要变成红色,如果变成红色了就表示开启了cookie,具体作用我还不知道)

cookie:

开始使用xdebug

首先在代码中打一个或多个断点(程序运行到这里会中断,然后会输出debug信息)

然后在phpstorm中选择要debug的应用程序(因为可以创建多个要debug的应用程序),然后点击小电话图标开始监听debug(不监听状态:,监听状态:),最后点击小虫子

点击小虫子后,会自动用浏览器打开然后又会自动跳回到phpstorm(看你debug的是什么位置,有时候不一定会跳),并且此时在phpstorm下方会输出debug信息。

设置debug的时候,运行到的那一行的代码颜色颜色

debug的行的这些信息怎样去掉?

点击下面这个按钮就能去掉

step into就是单步执行,遇到子函数就进入并且继续单步执行;

step over是在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。有一点,经过我们简单的调试,在不存在子函数的情况下是和step into效果一样的。

step out就是但单步执行到子函数内时,用step out就可以执行完子函数余下部分,并返回到上一层函
数。

step into:进入子函数
step over:越过子函数,但子函数会执行
step out:跳出子函数

phpstorm配置xdebug的更多相关文章

  1. 在windows10环境下给PHPStorm配置xdebug断点调试功能

    笔者的开发环境: wampserver2.5系统环境包 操作系统:windows10 64位专业版. php版本:php5.512 Apache版本:2.49 好了下面介绍,phpstorm配置xde ...

  2. 为 PhpStorm 配置 Xdebug 来调试代码

    当项目越来越复杂,排错就越发困难. 你以为代码是这么运行的,但就是有未想到的功能导致流程变得不可捉摸. 此时我们需要调试啊调试... PhpStorm 是一款优秀的 PHP IDE,排除其 Java ...

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

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

  4. phpstorm配置Xdebug进行调试PHP教程

    运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...

  5. PHPStorm配置Xdebug官方文档

    1 配置Xdebug 下载Xdebug 下载与您的PHP版本兼容的Xdebug扩展,并将其保存在该php/文件夹中. php/文件夹 的位置是在安装PHP引擎期间定义的. 如果您使用的是AMP软件包, ...

  6. phpstorm配置Xdebug进行调试

    运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...

  7. PHPStorm配置xdebug(phpStudy/wamp)

    一.下载并配置XDebug wamp环境: 1.获取xdebug

  8. Mac环境下PHPstorm配置xdebug开发调试web程序

    一.安装PHP的xdebug扩展 安装xdebug(技巧,为了找到适配的版本,让xdebug网站根据phpinfo()函数输出分析找到对应的方法及安装步骤:如果安装了多个PHP版本的话,尽量用phpi ...

  9. PhpStorm配置Xdebug调试

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

  10. phpstorm配置Xdebug进行调试PHP教程_php技巧_脚本之家

    运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...

随机推荐

  1. jdk环境变量配置方法

    jdk环境变量配置方法: 在安装完jdk后,还需要对jdk的环境变量进行配置才能正常使用,下面教大家如何配置jdk环境变量: 1.右键选择 计算机→属性→高级系统设置→高级→环境变量 2.系统变量→新 ...

  2. Velocity常用方法

    1.字符串替换 replace#if($!{name} != '')#set($tempName = $!{name})#set($tempName = $tempName.Replace('abc' ...

  3. vijosP1194 Domino

    vijosP1194 Domino 链接:https://vijos.org/p/1194 [思路] 矩阵相乘. 参考Matrix67的文章: [代码] #include<cstdio> ...

  4. MySQL 创建库

    CREATE DATABASE IF NOT EXISTS database_name DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 这种创建方式能保证数 ...

  5. 在Apache+php中使用json来通讯

    示例代码: <?php // 获取输入的内容 $request = http_get_request_body(); // 按json格式解析成一个 php对象 $json_obj = json ...

  6. windows下python安装paramiko

    Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在Python中使用SSH,则需要先安装模块顺序是 ...

  7. RCMTM _百度百科

    RCMTM _百度百科 RCMTM

  8. Ring - HDU 2296(自动机+dp)

    题目大意:斯蒂文想送给他女盆友一个戒指,并且他想在戒指上刻一些字,他非常了解他女盆友喜欢什么单词,比如"love""forvevr"....并且他还把女盆友喜欢 ...

  9. SSH常用命令选项

    SSH 是什么 SSH(全称 Secure Shell)是一种加密的网络协议.使用该协议的数据将被加密,如果在传输中间数据泄漏,也可以确保没有人能读取出有用信息.要使用 SSH,目标机器应该安装 SS ...

  10. Python多进程使用

    [Python之旅]第六篇(六):Python多进程使用   香飘叶子 2016-05-10 10:57:50 浏览190 评论0 python 多进程 多进程通信 摘要:   关于进程与线程的对比, ...