phpstorm2022.3.3和xdebug 3 调试代码记录

有鉴于之前使用log日志调试代码,或者var_dump()调试代码太慢了,系统出了问题排查效率低下。最终决定使用xdebug工具提高效率。总结如下:

1. xdebug版本要和phpstorm兼容,
     这里使用xdeubug 3.1.6,phpstorm 2022.3.3 (破解)据说 xdeubug 3版本必须是phpstorm 2020 版本以上
2. xdebug版本要和php 版本兼容
3. xdebug 3 版本配置 和网上大部分文章所说 的xdebug 2 有很大区别

开始:

一. 安装兼容的xdebug

步骤:
1.打印 phpinfo()
2. 在浏览器 界面中 Ctrl+A 全选复制整个界面 (phpinfo) 的信息
3. 打开网站 https://xdebug.org/wizard
3.把复制到的信息粘贴入白色框
4.点击下方的 Analyse my phpinfo() output 按钮,如图:

在这里插入图片描述

即可获得以下信息:
5.按照图片中的箭头指示一步步编译安装xdebug安照箭头指示一步步编译安装xdebug
如图是第9步骤的 /etc/php/7.3/fpm/conf.d/99-xdebug.ini 配置

在这里插入图片描述

zend_extension = xdebug
;这是xdebug3.1.6的配置
;开启xdebug
xdebug.mode = debug
;允许任意 ip 电脑的phpstorm客户端调试xdebug,默认只允许127.0.0.1 本机的phpstorm调试xdebug
xdebug.discover_client_host = 1

二. 配置 phpstorm

在这里插入图片描述

xdebug 3 ,默认使用 9003 端口,不同于xdebug 2,默认使用 9000

2.1 配置监听xdebug的端口 9003

在这里插入图片描述

2.2 配置远程服务器相关

在这里插入图片描述

2.2.1点击Validate 验证xdebug是否配置成功了

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

复制此行命令,到linux /windows 服务器,并回车执行

curl -f -L  -o ./phpstorm_xdebug.zip "https://packages.jetbrains.team/files/p/ij/xdebug-validation-script/script/phpstorm_xdebug_validator.zip";unzip ./phpstorm_xdebug.zip -d .;rm -f ./phpstorm_xdebug.zip

在这里插入图片描述
解压生成了3个 文件,其中最重要的phpstorm_index.php

在这里插入图片描述
在这里插入图片描述

显示找不到 http://192.168.11.168/phpstorm_index.php 文件

显然phpstorm 是想要我们能浏览器访问phpstorm_index.php(默认80端口)

在这里插入图片描述
那我们就来配置下
我这里是 yii 框架,nginx,那么就配置下nginx,能够访问到phpstorm_index.php
先copy phpstorm_debug.php,phpstorm_debug_validator.phar,phpstorm_index.php 到指定的目录

在这里插入图片描述
我随意设置了一个访问端口,7374,
在这里插入图片描述

重新配置下
在这里插入图片描述
点击访问浏览器
在这里插入图片描述
如下图所示,能访问页面,并显示Xdebug 的一些信息
在这里插入图片描述
使用phpstorm 验证xdebug 配置是否对
在这里插入图片描述
出现如下 红框的提示,说明成功了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最后浏览器打开某个接口,开始debug,设置断点,点击右边的虫子按钮,用来监听来自服务器的消息
在这里插入图片描述

设置断点
在这里插入图片描述
能显示变量的值,说明成功了

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/151455.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Makefile三个版本的编写

1.Makefile Makefile是一个工程管理文件,简化编译的流程,完成自动化编译的过程 在Makefile中,会把编译的过程分为两步,先生成.o文件,再对.o文件链接,生成可执行文件 Makefile由变量、函数、和规则构成 2.引…

TSINGSEE青犀睡岗离岗检测算法——确保加油站安全运营

众所周知,加油站是一个需要24小时营业的场所,由于夜间加油人员较少,员工极易处于疲劳或者睡眠状态,为保障安全和效率,通过TSINGSEE青犀睡岗离岗检测算法在加油站场景中,可以及时发现工作人员的疲劳状况&…

SpringCloud 微服务全栈体系(五)

第七章 Feign 远程调用 先来看我们以前利用 RestTemplate 发起远程调用的代码: 存在下面的问题: 代码可读性差,编程体验不统一 参数复杂 URL 难以维护 Feign 是一个声明式的 http 客户端,官方地址:https://github.…

2.21每日一题(隐函数求导+变上限积分求导)

1、首先 t 0 时,x ? 或者 y ? 求出来 2、等式两边进行一阶求导,把一阶导函数(隐函数求导)求出来 3、等式两边再次求导,把二阶导函数(隐函数求导)求出来 注意:隐函数求导及变上…

基于数字电路交通灯信号灯控制系统设计-单片机设计

**单片机设计介绍,1617基于数字电路交通灯信号灯控制系统设计(仿真电路,论文报告 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序文档 六、 文章目录 一 概要 交通灯控制系统在城市交通控制中发挥着重要的作用&#xf…

【微服务开篇-RestTemplate服务调用、Eureka注册中心、Nacos注册中心】

1.认识微服务 随着互联网行业的发展,对服务的要求也越来越高,服务架构也从单体架构逐渐演变为现在流行的微服务架构。 1.1.单体架构 单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署。 单体架构的优缺点如下&am…

shell实验

1.编写脚本for1.sh,使用for循环创建20账户,账户名前缀由用户从键盘输入,账户初始密码由用户输入,例如:test1、test2、test3、....、test10 编写脚本,使用read -p提醒用户从键盘输入账户名前缀以…

Simulink和GUI联合使用

1、内容简介 略 9-可以交流、咨询、答疑 2、内容说明 Simulink和GUI联合使用 Simulink、GUI、参数传递 3、仿真分析 4、参考论文 略

macOS Sonoma 14.1正式版发布 改善Apple Music界面 新增保修状态显示

10月26日消息,苹果今天为 macOS Sonoma 推出了 14.1 版本更新,本更新主要改善了 Apple Music 界面,设置中新增保修状态,并修复了多项错误内容。 经过几周的用户测试,Apple 正式向所有 Mac 用户发布了 macOS Sonoma 14.…

2023 MathorCup(妈妈杯) 数学建模挑战赛B题完整解题思路+模型+代码

2023妈妈杯数学建模B题完整版思路、模型代码已出!!! 云顶数模最新完整版解题思路、模型代码,供大家参考~~ B题目 解题思路 详细模型解析:

前后端分离不可忽视的陷阱,深入剖析挑战,分享解决方案,助你顺利实施分离开发。

不管你设计的系统架构是怎么样,最后都是你的组织内的沟通结构胜出。这个观点一直在组织内不断地被证明,但也不断地被忽略。 前后端分离的利与弊 近几年,随着微服务架构风格的引入、前后端生态的快速发展、多端产品化的出现,前后…