一、下载Xdebug扩展
使用phpinfo函数查看PHP版本信息需要注意的如下:
需要注意的地方是xdebug官网中没有带(TS)为非线性安全版本(NTS)
在php.ini文件中添加如下信息:
重启服务器后,运行http://localhost/phpinfo.php (看扩展是否存在)
二、PhpStorm Xdebug 断点调试工具的安装配置
第一步,设置 PHP CLI
第二步,设置 Xdebug 端口
第三步,设置 PhpStorm Key、主机以及端口
第四步,新建 Xdebug 服务,Name 可以根据自己项目名称来取
第五步,配置 Xdebug 调试接口
谷歌浏览器配置
下面介绍使用google chrome请求,安装 phpstorm helper 插件
安装debug插件
下载地址:https://www.crx4chrome.com/crx/768/
2、下载xdebug(https://www.crx4chrome.com/crx/1716/)
3、安装插件,将插件拖入
4、然后google chrome 会出现这两个图标,右击debug图标,设置ID key
运行测试
如下图所示
三、PhpStorm Xdebug 断点调试工具的使用
图中,所有画红圈的就是常用到的工具。其具体功能介绍如下:
重新请求
此功能键,点击后,当前调试所有变量全部销毁,重新开启一轮请求。即如同刷新页面。
执行到下一个断点,暂停
此功能键点击后,继续 Laravel 生命进程的路程,直到下一个断点,暂停
停止调试
此功能键,停止调试,结束 Laravel 周期。
变量栏
变量栏标签,其下面的内容是当前调试位置,PHP 注册到内存的全局变量和局部变量
定位到当前调试的文件以及行
此功能键的作用是:当调试行文件关闭了,或者代码视图跑到其它位置了,点击它,就能重新定位到调试文件以及调试行
跳过当前调试行代码要执行函数,直接返回结果
此功能键的作用是当调试行代码有调用函数,包含文件,new 新对象时,能够不进入相应函数、文件、类中,直接返回其调用的结果,并在当前行中,执行至下文
进入和强制进入调用的函数内
此功能键作用正好和上面的相反,即进入和强制进入当前调试行将要调用的函数、方法、包含的文件、new 的新对象类文件中,执行相应代码
跳出正在调用的函数
跳出正在执行的函数、方法、包含的文件、new 新对象的类文件,至调用行,并继续执行调用行下面的代码
四、 造成开启XDebug无效原因
1、路径不正确,在php.ini文件中zend_extension路径不正确,例如:正反斜杠、路径不对问题
2、php_debug扩展版本不匹配
例如:你安装的是PHP7.2版本,实际下载的php_debug版本是PHP7.1,就会造成开启debug失败
3、php_debug扩展32位或者64位与安装PHP的不对应
一般的集成环境中,PHP的架构都是32位的(x86),而你的电脑是64位(x64),以PHP的环境架构为准,例如:我的使用的PHP是x32为,电脑是win10 64位,我直接到xdebug官网下载64位扩展,导致开启扩展失败
4、注意下载的php_debug扩展NTS/TS 与安装PHP对应。
领取专属 10元无门槛券
私享最新 技术干货