Home > php教程 > php手册 > phpstorm配置xdebug - xiebruce

phpstorm配置xdebug - xiebruce

WBOY
Release: 2016-05-20 11:51:48
Original
1647 people have browsed it

 

首先配置好xdebug

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

  1. <span class="pun">[</span><span class="pln">xdebug</span><span class="pun">]</span>

  2. <span class="pln">zend_extension</span><span class="pun">=</span><span class="str">"/usr/local/opt/php55-xdebug/xdebug.so"</span>

  3. <span class="pln">xdebug</span><span class="pun">.</span><span class="pln">remote_enable</span><span class="pun">=</span><span class="typ">On</span>

  4. <span class="pln">xdebug</span><span class="pun">.</span><span class="pln">remote_autostart</span><span class="pun">=</span><span class="typ">Off</span>

  5. <span class="pln">xdebug</span><span class="pun">.</span><span class="pln">remote_host</span><span class="pun">=</span><span class="str">"localhost"</span>

  6. <span class="pln">xdebug</span><span class="pun">.</span><span class="pln">remote_port</span><span class="pun">=</span><span class="lit">9002</span>

  7. <span class="pln">xdebug</span><span class="pun">.</span><span class="pln">remote_handler</span><span class="pun">=</span><span class="str">"dbgp"</span>

  8. <span class="pun">;</span><span class="pun">可以是任意</span><span class="typ">Key</span><span class="pun">,这里设定为</span><span class="pln">PHPSTORM</span>

  9. <span class="pln">xdebug</span><span class="pun">.</span><span class="pln">idekey</span><span class="pun">=</span><span class="str">"PHPSTORM"</span>

注:我所用的是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:跳出子函数

 

 

 

 

 

 

 

 

 

 

 

 

 

 





source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template