在 phpstorm 中调试 hyperf 代码
php常用的调试器是xdebug,不过hyperf是基于swoole,而swoole不支持xdebug。swoole官方基于xdebug魔改了一个swoole调试插件-sdebug。
我的电脑是使用WSL的,因此本文的配置是基于WSL ubuntu的。理论上可以应用所有系统与虚拟机。
见地址:sdebug
安装
以上编译完插件之后,需要将sdebug插件加入到php.ini中。
如果php --ri sdebug
能够查到扩展的信息,说明扩展成功安装。
配置sdebug
phpstorm的配置
在phpstorm中,需要将php路径映射为远程的路径。因此在配置php cli的时候,需要配置一些信息:
红圈中的配置要取消掉,不然请求时swoole的子进程会卡死。
这里还需要配置php cli的。需要将php的cli配置正常,并且命令行的选项需要增加一个配置xdebug.remote_host,该选项配置为phpstorm所在机子的ip地址。
配置完php cli之后,还需要配置以何命令启动php。
我们之前是在命令行启动php bin/hyperf.php start
,现在需要如同这么配置。配置完成之后,点击调试按钮启动,这个时候使用postman请求某个接口,就能够调试了:
除了调试请求外,也能够调试脚本。脚本的话,也需要配置多一个命令:
这么配置之后,使用调试按钮启动之后就能够调试命令行。
最后更新于