今天早上弄xdebug折腾了有一会,记录一下,以后好找。
环境:
代码如下 | 复制代码 |
Windows 7 Business Edition Service Pack 1(64位) XAMPP v3.2.1 |
这个版本的XAMPP,自带的php_debug.dll模块启用不了,总是报错,就去xdebug.org下载。
试了好几个版本才找到能用的
下好之后,一个个试,有的报错无法运行,有的不报错,但是phpinfo()里面没有显示已经加载了xdebug。
只有php_xdebug-2.2.3-5.4-vc9.dll可以使用(话说我一个64位系统,为啥运行的是32位的dll,难道和我的php版本有关?感觉xampp自带的php是32位编译出来的)。
安装Xdebug
把下好的Xdebug放到php目录的ext文件夹下面,然后修改php.ini。
[Xdebug]
zend_extension="d:/xampp/php/ext/php_xdebug-2.2.3-5.4-vc9.dll"
1 2 |
[Xdebug] zend_extension="d:/xampp/php/ext/php_xdebug-2.2.3-5.4-vc9.dll" |
重启Apache后再看phpinfo,有xdebug选项即表示xdebug模块已启用(我的是win下面的xampp,如如果是Linux,可能还需要重启php服务,例如php-fpm模式的时候)。
使结果输出到IDE上面
先打开xdebug的远程模式,编辑php.ini,完整配置如下:
[Xdebug]
zend_extension="d:/xampp/php/ext/php_xdebug-2.2.3-5.4-vc9.dll"
xdebug.remote_enable = On
xdebug.remote_host = 127.0.0.1
xdebug.remote_port = 9000
xdebug.remote_handler = "dbgp"
1 2 3 4 5 6 |
[Xdebug] zend_extension="d:/xampp/php/ext/php_xdebug-2.2.3-5.4-vc9.dll" xdebug.remote_enable = On xdebug.remote_host = 127.0.0.1 xdebug.remote_port = 9000 xdebug.remote_handler = "dbgp" |
如上重启,接着配置IDE,我这里以phpstorm为例。
File -> Settings -> PHP -> Servers
如图配置即可
Run -> edit configurations
新建一个PHP Web Application配置
如图,编辑自己的配置