PhpStorm中配置xdebug调试环境

1. 安装xdebug

第一步: 获得本地PHP配置信息php

在终端中运行: php -i > outputphp.txtweb

而后将获得的txt文件中的信息拷贝并复制到http://xdebug.org/wizard.php 这个页面提供的一个textarea中. 而后点击下方的Analyze按钮, 它会自动帮你解析你本地的PHP环境信息从而获得你须要下载的xdebug版本和相关配置指令.chrome

为了进行下面步骤,还须要安装php5-dev依赖包:ubuntu

sudo apt-get install php5-dev
  • 1

第二步: 获得须要下载的版本和相关指令vim

好比, 我获得的信息以下:浏览器

  1. 下载 xdebug-2.3.2.tgz (下载地址直接点击生成的连接)
  2. 解压缩文件: tar -xvzf xdebug-2.3.2.tgz
  3. 运行: cd xdebug-2.3.2
  4. 运行: phpize (See the FAQ if you don’t have phpize.
    部分输出以下所示:
    Configuring for:

    Zend Module Api No: 20121212
    Zend Extension Api No: 220121212
    若是没有以上输出, 那么表明你的phpize有问题. 参考FAQ.phpstorm

  5. 运行: ./configureui

  6. 运行: make
  7. 运行: sudo cp modules/xdebug.so /usr/lib/php5/20121212

以上有些步骤也许须要sudo.google

第三步: 向php.ini中添加配置项spa

sudo vim /etc/php5/cli/php.ini zend_extension = /usr/lib/php5/20121212/xdebug.so xdebug.remote_host = 127.0.0.1 xdebug.remote_enable = 1 xdebug.remote_port = 9000 xdebug.remote_handler = dbgp xdebug.remote_mode = req
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

如非必要, 以上的配置项不须要修改. 以前我就是想固然的将remote_port那一项修改为了个人应用在Server上的端口号, 致使没法调试. 花了好些时间才定位到是这里的问题.

到这里, xdebug就安装成功了. 能够经过php –version命令进行验证:

PHP 5.5.9-1ubuntu4.7 (cli) (built: Mar 16 2015 20:47:39) Copyright
(c) 1997-2014 The PHP Group Zend Engine v2.5.0, Copyright (c)
1998-2014 Zend Technologies
with Xdebug v2.3.2, Copyright (c) 2002-2015, by Derick Rethans
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies

能够发现输出中已经存在了Xdebug的信息.

2. 安装 Xdebug extension helper

在主流的浏览器上都有xdebug的扩展助手插件, 可以帮助你方便的打开或者关闭调试功能, 为何须要这个插件, 能够参考这篇文章中的4, 5, 6小节(是英文的, 有兴趣的同窗能够自行查阅)

以Chrome为例, 在这里找到插件的安装地址:
https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc?hl=en
若是打不开, 能够参考这篇文章, 介绍了如何利用插件的ID进行离线下载, 毕竟如今Google的服务全面被墙…..

Xdebug helper的插件ID是: eadndfjplgieldjbigjakmdgkmoaaaoc

安装完毕以后, 打开该插件的options, 设置IDEKey为PhpStorm.

3. 配置PhpStorm

终于到最后一步了, 这一步很简单.
就是勾选Run菜单下的Start Listening for PHP Debug Connections.

而后在你须要调试的地方打个断点, 最后在浏览器中输入PHP脚本的地址就能够了. 注意要启用以前安装的Xdebug Helper.
启用的方法是:

这里写图片描述

OK, 开心地进行调试吧!!!

这里写图片描述

原理示意图(从xdebug的官网上引用的)

这里写图片描述

主要参考文章:

https://confluence.jetbrains.com/display/PhpStorm/Zero-configuration+Web+Application+Debugging+with+Xdebug+and+PhpStorm
http://icephoenix.us/php/how-to-setup-local-php-debugging-with-phpstorm-and-xdebug/
http://xdebug.org/docs/remote#starting