本篇文章给大家带来了关于PHPSTORM Xdebug的相关知识,其中主要介绍了phpstorm Xdebug是怎么配置使用的,下面一起来看一下,希望对需要的朋友有所帮助。
写在前面
PHP 因为天生自带“热加载”的优势,可能很多 phper 都很少使用 php 的 debug 功能吧。反正我已经很久很久很久没有用过 debug 了,回忆起来也该有5,6年了。。。
但对于新手 phper 来说,没有什么比 debug 更友好了。毕竟以前入门 php 的时候,它也是陪我走了不少岁月出了不少力,说是排坑解决问题的一大神器也不为过了。
下面简单记录一下 phpstorm Xdebug 的配置使用,希望对你有所帮助!
原理简要
简单 C/S 理解:一个客户端(Client)、一个服务端(Server)
检查安装
检查并安装当前 php 版本的 Xdebug 扩展,php 扩展安装就不说了
D:wwwoa2>php -m | find "Xdebug"Xdebug
配置 php.ini debug 参数
[XDebug]zend_extension="php_xdebug.dll"xdebug.idekey="PHPSTORM"xdebug.remote_enable =1xdebug.remote_handler =dbgp xdebug.remote_host =127.0.0.1xdebug.remote_port=9011xdebug.max_nesting_level=256xdebug.mode=debug,trace
PHPSTORM 设置
进入phpstorm设置菜单(Ctrl+Alt+S),选择 Languages & Frameworks => PHP, 设置 CLI Interpreters;
选择 PHP => Debug, 设置debug端口,同 php.ini 设置的 xdebug.remote_port=9011
当前页面点击 Validate 按钮,验证是否配置成功
选择 PHP => Server, 配置server
设置 Debug Configurations
到这里就基本就ok了,最后写个 demo 开启监听,编辑断点,来试试 debug 的效果吧
接口调试
使用接口工具请求 API 时需添加参数:XDEBUG_SESSION_START=TRUE
如:laravel5.com/api/test?XDEBUG_SESSION_START=TRUE
或者添加站点Cookie: XDEBUG_SESSION=TRUE;
浏览器调试请安装 Xdebug helper 插件
命令行的 debug 就更简单了,实际就是配置一个 php 运行脚本
如:生成一个 artisan 测试脚本,打好断点,运行 debug 即可
疑问
如何配置远程debug呢?
在上面的“设置 Debug Configurations”中,我选择的是“PHP Web Page”。还可以选择“PHP Remote Debug”,也支持本地 debug, 同时还支持远程 debug, 此选项需多配置一个 IDE Key。
远程 debug 其实是一样的,稍微多一步配置:远程代码与本地代码的映射,仅此而已!
因远程 debug 几乎很少用到,就不详细截图了。有兴趣的小伙伴可以自己试试,说不定哪天就用到了。。。
推荐学习:《phpstorm使用教程》