phpstorm hyperf 单元测试 yasd debug 断点调试

一、 环境说明

  • 我是本地Mac 环境配置

  • yasd安装教程可以查看,=> yasd安装教程

  • 我安装的yasd 版本:releases v0.3.9版本
    YFVQtsvLqO.png!large

  • 虚拟机或者docker 配置原理一样

  • 配置一下远程CLI interpreter
    2bkOjTW6Fy.png!large

  • 就是注意要配置一下本地项目路径和远程路径的映射关系
    5LmDuts4tN.png!large

二、php.ini配置

  • 这个配置是关键:yasd.open_extended_info=1,相当于每次使用php命令的时候,会自动加上-e
  • 例如:php bin/hyperf.php start 实际上运行的是 php -e bin/hyperf.php start
  • 调试完记得注释掉:yasd.open_extended_info=1
    zend_extension=yasd.so
    ;使用远程调试远程调试
    yasd.debug_mode=remote
    ;本地开发地址 IDE所在的ip地址,如果是虚拟机,请填写虚拟机和宿主机通信的那个网卡的ip地址
    yasd.remote_host=127.0.0.1
    ;本地开发监听端口
    yasd.remote_port=9999
    ; 这样的话,相当于默认开启了php -e选项, 调试完记得注释掉
    yasd.open_extended_info=1

三、phpstorm 监听端口配置

givzhzk2n7.png!large

四、开启phpstorm右上角的电话开始监听

D85ibLB1tW.png!large

五、hyperf单元测试配置,参考:hyperf单元测试配置

  • 开始打断点
  • 点击单元测试方法左上角的绿色三角形
  • 再点击:Run或者Debug
  • 就可以进行断点调试了,具体效果,如下图所示
    AxormMMapK.png!large

六、需要注意的点

  • 如果代码是走代理类的,断点需要打在代理类那边,才会生效
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 1

我远程,虚拟机断点调试也可以,可以看下yasd的版本,我的是:v0.3.9

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!