php开发断点调试,Phpstorm+Xdebug断点调试PHP的方法

这篇文章主要介绍了Phpstorm+Xdebug断点调试PHP的方法,本教程将通过配置Xdebug扩展进行断点调试,目的在于提高大家的开发效率,感兴趣的小伙伴们可以参考一下

为什么使用断点调试

大家可能会觉得使用var_dump和echo也能调试啊,为什么还要安装Xdebug断点调试呢?

确实是这样。但是var_dump和echo写的代码后面还要删除,而且明确是知道在哪打的,如果发现没有运行到打点的地方,还要修改代码再运行一次。而断点调试,可以在调试过程中动态打断点,逐行查看当前各个变量的值,甚至临时修改变量的值,更方便。建议大家使用Xdebug断点调试。

安装Xdebugpecl install xdebug

如果是php7以下版本,需要加上版本号:pecl install xdebug-2.5.5

pecl如果提示找不到该扩展,则使用源码编译。例如:wget http://pecl.php.net/get/xdebug-2.5.5.tgz \

&& tar xzf xdebug-2.5.5.tgz && cd xdebug-2.5.5/ \

&& phpize \

&& ./configure \

&& make && make install

注:php5.6只能使用2.5及以下版本xdebug。

安装好后需要在php.ini进行配置:[xdebug]

zend_extension=xdebug.so

xdebug.enable=1

xdebug.remote_enable=1

;如果开启此,将忽略下面的 xdebug.remote_host 的参数

;xdebug.remote_connect_back=1

;自动启动,无需XDEBUG_SESSION_START=1

xdebug.remote_autostart=1

;宿主机IP

xdebug.remote_host=192.168.36.101

xdebug.remote_port=19001

xdebug.remote_handler=dbgp

需要注意的是:

1、是zend_extension,不是extension;

2、xdebug.remote_autostart开启后,就不用手动在请求url里加上XDEBUG_SESSION_START=1了,只要Phpstorm开启断点调试就ok了。很方便;

3、remote_host配置的是安装有Phpstorm的机器,这点需要注意。如果php安装的机器和Phpstorm安装的机器是同一台机器,那么地址写127.0.0.1即可。

如果你采用的是docker环境,remote_host写宿主机的IP。

4、xdebug.remote_port端口我写的是19001,那么Phpstorm也需要修改。

配置完成后需要重启php-fpm。

配置Phpstorm

配置也很简单,配置端口即可:

7709a89d3a7083f7c890c92e2b766a8c.png

接下来就可以断点调试了。开启监听:

7418f226736865755603a3e7aa26f3da.png

请求url的时候就会自动捕捉到请求。

注意:

1、不要同时开启多个项目的监听;

2、监听远程代码的时候,如果宿主机和代码所在目录结构一致,会直接监听成功。否则,会提示设置代码映射关系。也可以手动设置:

d7777a5af9330c89312c44891cbb014b.png

这里因为宿主机是windows,代码在linux里,目录不一致,做了映射。否则断点会失败。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值