断断续续折腾了好几次,整合了一些资料;
具体过程:
配置部署:
1、扩展安装方式和其它的php扩展一样几步走,网上的教程很多,这里就不多说了;
2、Php.ini中的配置信息
; zend_extension =/usr/local/php/extensions/xdebug.so
[xdebug]
xdebug.default_enable=0
xdebug.remote_enable=1 ;远程调试开关,必须开启
xdebug.remote_handler=dbgp ;远程调试xdebug与IDE使用的协议,默认就是dbgp
xdebug.remote_host=127.0.0.1 ;远程调试xdebug回连的主机ip,如果开启了remote_connect_back,则该配置无效
xdebug.remote_port=9000 ;远程调试回连的port,默认即为9000,如果有端口冲突,可以修改,对应ide的debug配置里面也要同步修改
xdebug.remote_connect_back=0 ;是否回连,如果开启该选项,那么xdebug回连的ip会是发起调试请求对应的ip
xdebug.remote_autostart=1
xdebug.idekey=netbeans ;调试使用的关键字,发起IDE上的idekey应该和这里配置的idekey一致,不一致则无效
xdebug.remote_log=/data/xdebug_log/remote.log
3、重启apache,打印phpinfo(),可以看见xdebug是否生效和参数情况。
![](https://images2015.cnblogs.com/blog/1091655/201702/1091655-20170206224637916-1172638235.png)
点击下拉选择 编辑配置,配置服务器信息,添加项目调试开发地址,点击OK。
配置PHP Debug
根据图中找到【Debug】,XDebug中的Debug Port填写9000,其它默认。
进行调试
在需要调试的行上打上断点(点击一下行号后面的空白处即可,再点一次取消断点),需要说明的是当程序运行到该断点时,程序会停留在该行,但该行本身不会执行。自此可以查看程序运行到此处时所包含的所有数据信息。当然,查看信息功能相当于使用php中的var_dump。
![](https://images2015.cnblogs.com/blog/1091655/201702/1091655-20170206234731338-1277091166.png)
![](https://images2015.cnblogs.com/blog/1091655/201702/1091655-20170206234754885-1649370910.png)
![](https://images2015.cnblogs.com/blog/1091655/201702/1091655-20170206235041213-683199345.png)
![](https://images2015.cnblogs.com/blog/1091655/201702/1091655-20170206235548697-326490259.png)