为什么使用断点调试
大家可能会觉得使用var_dump和echo也能调试啊,为什么还要安装Xdebug断点调试呢?
确实是这样。但是var_dump和echo写的代码后面还要删除,而且明确是知道在哪打的,如果发现没有运行到打点的地方,还要修改代码再运行一次。而断点调试,可以在调试过程中动态打断点,逐行查看当前各个变量的值,甚至临时修改变量的值,更方便。建议大家使用Xdebug断点调试。
安装Xdebug
pecl 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
配置也很简单,配置端口即可:
接下来就可以断点调试了。开启监听:
请求url的时候就会自动捕捉到请求。
注意:
1、不要同时开启多个项目的监听;
2、监听远程代码的时候,如果宿主机和代码所在目录结构一致,会直接监听成功。否则,会提示设置代码映射关系。也可以手动设置:
这里因为宿主机是windows,代码在linux里,目录不一致,做了映射。否则断点会失败。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 【雨果唱片】中国管弦乐《鹿回头》WAV
- APM亚流新世代《一起冒险》[FLAC/分轨][106.77MB]
- 崔健《飞狗》律冻文化[WAV+CUE][1.1G]
- 罗志祥《舞状元 (Explicit)》[320K/MP3][66.77MB]
- 尤雅.1997-幽雅精粹2CD【南方】【WAV+CUE】
- 张惠妹.2007-STAR(引进版)【EMI百代】【WAV+CUE】
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】