本地环境:
windows10,phpstudy2018
PHP 版本7.2.10-NTS
phpstorm 版本2020.1
单步调试比var_dump,print_r方便的多.但是配置过程比较繁琐,耐心看完.
确定Xdebug版本.
1. 查看本地phpinfo();
图片.png
2. 进入Xdebug官网找到匹配的版本
图片.png
确定好之后开始下载得到一个.dll文件
图片.png
3. 复制到本地PHP的扩展目录(注意放到对应版本的目录中)
图片.png
4. 然后打开对应的配置文件php.ini.搜索xdebug添加配置项,我是直接从官网复制的官方可选配置项.
配置中过会需要用到的内容
client_host = www.myide.com(自定义)
client_port = 9001(自定义)
idekey = mykey(自定义)
并且在windows的host文件中配置.域名www.myide.com指向本机127.0.0.1,
zend_extension="刚才下载的dll文件路径"
xdebug.client_host = www.myide.com ;客户端地址
xdebug.client_port = 9001 ;客户端端口号
xdebug.idekey = mykey ;字符串key
xdebug.remote_enable=1 ;调试打开
xdebug.client_discovery_header = ""
xdebug.connect_timeout_ms = 200
xdebug.discover_client_host = false
xdebug.log =
xdebug.log_level = 7
xdebug.mode = debug
xdebug.start_upon_error = default
xdebug.start_with_request = default
xdebug.trigger_value = ""
图片.png
重启phpstudy使配置生效.到此server端配置完成
配置客户端
客户端指的是写代码的软件(如phpstorm)
1. 设置
图片.png
选择PHP版本7.2
图片.png
展开左侧PHP点击Debug填上刚才配置的端口9001
图片.png
展开左侧Debug点击DBGp Proxy,按照php.ini中内容填写.
图片.png
在左侧Debug平级的Servers中添加
图片.png
保存退出.
2. 添加调试项
点击添加配置
图片.png
点击左上角加号,左侧选择PHP Remote Debug,
然后在右侧勾选Filter debug connection by IDE key
选择前边配置的server,填入PHP配置文件中的key
图片.png
保存.到这,就配置完了.
开始调试
找了个laravel框架,在入口文件index.php中打上断点.
图片.png
通过postman访问这个index.php文件.并带上特殊参数
XDEBUG_SESSION_START=mykey
图片.png
phpstorm就进入调试模式了
图片.png
当然也可以调试某个控制器方法
图片.png
可能遇到的问题
有时候可能出现意想不到的bug,比如用phpstorm2018 + Xdebug3.0.2,虽然到断点的地方会停下,但调试的下一步按钮是灰色的
图片.png
直接升级成phpstorm2020就可以了.