当前位置: 首页 > news >正文

VScode的PHP远程调试模式Xdebug

目录

第一步、安装VScode中相应插件

remote-ssh的原理

 ssh插件:

PHP相关插件:

 第二步、安装对应PHP版本的xdebug

查看PHP具体配置信息的phpinfo页面

1、首先,打开php编辑器,新建一个php文件,例如:index.php

2、在index.php中,输入代码:phpinfo();

 3、浏览器运行index.php页面,此时打印出了该php服务器上各个配置信息、组件信息的phpinfo页面。

                        ​​​​​​​         点击最下面的按钮

第三步、修改launch.json文件

第四步、修改php.ini文件

php.ini文件路径: 

第五步、设置断点,开始调试

在test文件夹中新建一个index.php文件,配置如下 


需要的配置环境:

VScode    PHP

官方文档:使用 SSH 和 Visual Studio 代码在远程计算机上进行开发

第一步、安装VScode中相应插件

remote-ssh的原理

        在Visual Studio代码远程- SSH扩展允许你打开任何远程计算机,虚拟机或容器上的远程文件夹与正在运行的SSH服务器,并充分利用VS代码的功能集。一旦连接到服务器,您就可以与远程文件系统上任何位置的文件和文件夹进行交互。

        由于扩展直接在远程计算机上运行命令和其他扩展,因此无需在本地计算机上使用源代码即可获得这些好处。

SSH架构

 ssh插件:

PHP相关插件:

如果你之前安装过PHP相关软件,在远程连接后会提示你该插件在此扩展在此工作区中被禁用,因为其被定义为在远程扩展主机中运行。请在'SSH:xxx.xxx.xxx.xxx'中安装扩展以进行启用。

因此,我们需要在当前环境下再次安装所需插件

 第二步、安装对应PHP版本的xdebug

查看PHP具体配置信息的phpinfo页面

1、首先,打开php编辑器,新建一个php文件,例如:index.php

2、在index.php中,输入代码:phpinfo();

 3、浏览器运行index.php页面,此时打印出了该php服务器上各个配置信息、组件信息的phpinfo页面。

在xdebug官网,将自己phpinfo的源代码复制进去 

xdebug官网:Xdebug: Support — Tailored Installation Instructions

 点击最下面的按钮

第三步、修改launch.json文件

可以先打开一个文件,之后点击运行和调试,在点击设置按钮就会转到launch.json文件

加上如下配置

 注意修改端口号

{

    // 使用 IntelliSense 了解相关属性。

    // 悬停以查看现有属性的描述。

    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387

    "version": "0.2.0",

    "configurations": [

        {

            "name": "Listen for Xdebug",

            "type": "php",

            "request": "launch",

            "port": 9001

        },

        {

            "name": "Launch currently open script",

            "type": "php",

            "request": "launch",

            "program": "${file}",

            "cwd": "${fileDirname}",

            "port": 0,

            "runtimeArgs": [

                "-dxdebug.start_with_request=yes"

            ],

            "env": {

                "XDEBUG_MODE": "debug,develop",

                "XDEBUG_CONFIG": "client_port=${port}"

            }

        },

        {

            "name": "Launch Built-in web server",

            "type": "php",

            "request": "launch",

            "runtimeArgs": [

                "-dxdebug.mode=debug",

                "-dxdebug.start_with_request=yes",

                "-S",

                "localhost:0"

            ],

            "program": "",

            "cwd": "${workspaceRoot}",

            "port": 9001,

            "serverReadyAction": {

                "pattern": "Development Server \\(http://localhost:([0-9]+)\\) started",

                "uriFormat": "http://localhost:%s",

                "action": "openExternally"

            }

        }

    ]

}

第四步、修改php.ini文件

php.ini文件路径: 

以本人为例:

本人将php安装在D:\software\computing\NSP\phpstudy路径下

php.ini文件夹则在D:\software\computing\NSP\phpstudy\phpstudy_pro\Extensions\php\php7.3.4nts路径下

注意:你要寻找对于php版本的phpx.x.xnts文件夹
 

第五步、设置断点,开始调试

在test文件夹中新建一个index.php文件,配置如下 

在php中打开Apache

 

 再次刷新即可

 

相关文章:

VScode的PHP远程调试模式Xdebug

目录 第一步、安装VScode中相应插件 remote-ssh的原理 ssh插件: PHP相关插件: 第二步、安装对应PHP版本的xdebug 查看PHP具体配置信息的phpinfo页面 1、首先,打开php编辑器,新建一个php文件,例如:inde…...

HTML5-2-链接

HTML使用标签 <a>来设置超文本链接。 超链接可以是一个字&#xff0c;一个词&#xff0c;或者一组词&#xff0c;也可以是一幅图像&#xff0c;您可以点击这些内容来跳转到新的文档或者当前文档中的某个部分。 默认情况下&#xff0c;链接将以以下形式出现在浏览器中&am…...

Java--常用jar命令

jar常用指令 jar命令参数&#xff1a; jar命令格式&#xff1a;jar {c t x u f }[ v m e 0 M i ][-C 目录]文件名... 其中{ctxu}这四个参数必须选选其一。[v f m e 0 M i ]是可选参数&#xff0c;文件名也是必须的。 -c 创建一个jar包 -t 显示jar中的内容列表 -x 解压jar包 …...

微服务中间件--多级缓存

多级缓存 多级缓存a.JVM进程缓存1) Caffeine2) 案例 b.Lua语法1) 变量和循环2) 条件控制、函数 c.多级缓存1) 安装OpenResty2) 请求参数处理3) 查询Tomcat4) Redis缓存预热5) 查询Redis缓存6) Nginx本地缓存 d.缓存同步1) 数据同步策略2) 安装Canal2.a) 开启MySQL主从2.b) 安装…...

clickhouse系列3:clickhouse分析英国房产价格数据

1.准备数据集 该数据集包含有关英格兰和威尔士自1995年起到2023年的房地产价格的数据,超过2800万条记录,未压缩形式的数据集大小超过4GB,在ClickHouse中需要约306MB。 2.clickhouse中建表 CREATE TABLE uk_price_paid (price UInt32,...

2023京东口腔护理赛道行业数据分析(京东销售数据分析)

近年来&#xff0c;口腔护理逐渐成为年轻人重视的健康领域&#xff0c;从口腔护理整体市场来看&#xff0c;牙膏和牙刷等基础口腔护理产品仍占据主导地位。不过&#xff0c;随着口腔护理市场逐步朝向精致化、专业化、多元化等方向发展&#xff0c;不少新兴口腔护理产品受到消费…...

安服面试 --- 01

1、常用渗透工具 burp、nmap、sqlmap、蚁剑、御剑、冰蝎、cobalt strike等 2、渗透测试中&#xff0c;拿到目标公司站点&#xff0c;接下来应该怎么做&#xff1f; &#xff08;1&#xff09;信息收集&#xff1a;收集目标公司的相关信息。包括域名、ip地址、子域名、开放端…...

ExpressLRS开源之RC链路性能测试

ExpressLRS开源之RC链路性能测试 1. 源由2. 分析3. 测试方案4. 测试设计4.1 校准测试4.2 实验室测试4.3 拉距测试4.4 遮挡测试 5. 总结6. 参考资料 1. 源由 基于ExpressLRS开源基本调试验证方法&#xff0c;对RC链路性能进行简单的性能测试。 修改设计总能够满足合理的需求&a…...

el-form表单el-form-item prop一次验证两个值

1.表单添加两个框&#xff0c;prop写上 <el-form :model"ruleForm" :rules"rules" ref"ruleForm" label-width"100px" > <el-form-item type"type" label"时间" prop"dateSectOne"><di…...

HTTP 代理原理及 Python 简单实现

HTTP 代理是一种网络代理服务器(Proxy Server),它能够作为客户端与 HTTP 服务器之间的中介,它的工作原理是: 当客户端向 HTTP 代理发送 HTTP 请求时,HTTP 代理会收到请求。 HTTP 代理会将请求转发给目标 HTTP 服务器。 目标 HTTP 服务器处理请求并生成响应。 HTTP 代理将…...

数据结构--队列与循环队列

队列 队列是什么&#xff0c;先联想一下队&#xff0c;排队先来的人排前面先出&#xff0c;后来的人排后面后出&#xff1b;队列的性质也一样&#xff0c;先进队列的数据先出&#xff0c;后进队列的后出&#xff1b;就像图一的样子&#xff1a; 图1 如图1&#xff0c;1号元素是…...

八路参考文献:[八一新书]许少辉.乡村振兴战略下传统村落文化旅游设计[M]北京:中国建筑工业出版社,2022.

八路参考文献&#xff1a;&#xff3b;八一新书&#xff3d;许少辉&#xff0e;乡村振兴战略下传统村落文化旅游设计&#xff3b;&#xff2d;&#xff3d;北京&#xff1a;中国建筑工业出版社&#xff0c;&#xff12;&#xff10;&#xff12;&#xff12;&#xff0e;...

版本控制 Git工具的使用

版本控制的概念&#xff1a; 版本控制&#xff08;Revision control&#xff09;是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史&#xff0c;方便查看更改历史记录&#xff0c;备份以便恢复以前的版本的软件工程技术。简单来说就是用于管理多人协同开发…...

GNS3 在 Linux 上的安装指南

文章目录 GNS3 在 Linux 上的安装指南1. 基于 Ubuntu 的发行版安装 GNS32. 基于 Debian 的安装3. 基于 ArchLinux 的安装4. 从 Pypi 安装 GNS35. 启动 GNS3 服务端GNS3 在 Linux 上的安装指南 大家好,今天我们来聊聊如何在 Linux 上安装 GNS3。GNS3 是一个非常受欢迎的网络模…...

Mybatis中 list.size() = 1 但显示 All elements are null

一、Bug展示 二、原因分析 2.1.情形一&#xff1a;Mybatis的XML中返回类型映射错误 <select id"selectByDesc" parameterType"com.task.bean.OrderInfo"resultType"com.task.bean.OrderInfo">select MER_ID,SETTLE_DATE,ICE_NAME,ORDER_S…...

Soul的社交元宇宙之路,还有多远?

在元宇宙概念爆火的当下&#xff0c;以互联网为依托的虚拟社交逐步为用户承载起其空缺的精神交流与寄托&#xff0c;而在这其中&#xff0c;以“跟随灵魂找到你”为Slogan&#xff0c;主打年轻人社交元宇宙平台的APP--Soul则在这条赛道上凭借着独特的风格&#xff0c;逐步突出重…...

如何解决Memcached缓存击穿和雪崩问题

原文 Memcached是一种快速、高性能的分布式内存对象缓存系统&#xff0c;广泛应用于Web应用的缓存中。然而&#xff0c;Memcached也存在一些常见的问题&#xff0c;如缓存击穿和缓存雪崩。本文将介绍什么是缓存击穿和缓存雪崩&#xff0c;并提供一些解决这些问题的方法&#x…...

uniapp 开发之仿抖音,上下滑动切换视频、点击小爱心效果

效果图&#xff1a; 功能描述&#xff1a; 上下滑动视频&#xff0c;双击暂停&#xff0c;然后第一个视频再往上滑显示”已经滑到顶了“ 开始代码&#xff1a; 首先视频接口使用的公开的视频测试接口 开放API-2.0 官网展示 Swagger UI 接口文档 一…...

【C++设计模式】依赖倒转原则

2023年8月30日&#xff0c;周三上午 目录 概述含义举个简单的例子传统做法使用依赖倒转原则代码说明再举一个具体的例子以生活为例 概述 依赖倒转原则(Dependency Inversion Principle,DIP)是面向对象设计中的一个基本原则。 含义 高层模块不应该依赖低层模块,两者都应该依…...

浙江首例!金华银行基于完全国产自研数据库构建新一代核心系统

6 月 12 日&#xff0c;金华银行举行“星辉工程”核心项目群上线发布会&#xff0c;新一代核心系统部署在国产分布式数据库 OceanBase 上&#xff0c;实现系统的高可用、高性能、国产升级。据悉&#xff0c;这是浙江省首例基于完全国产自研数据库落地的银行核心系统。 金华银行…...

SMAPI模组加载器全方位指南:从安装到高效管理星露谷物语模组

SMAPI模组加载器全方位指南&#xff1a;从安装到高效管理星露谷物语模组 【免费下载链接】SMAPI The modding API for Stardew Valley. 项目地址: https://gitcode.com/gh_mirrors/smap/SMAPI 作为开源工具的SMAPI模组加载器&#xff0c;是星露谷物语玩家扩展游戏体验的…...

2025届学术党必备的十大降重复率神器推荐

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 于学术研究范畴之内&#xff0c;论文撰写常常会由于其结构繁杂且格式规范极为严格&#xff0…...

FedoraWorkstation43安装中州韵(ibus-rime)输入法引擎+雾凇拼音+万象语言模型

1、安装ibus-rime sudo dnf install ibus-rime librime-devel librime-tools librime-lua2、使用东风破工具安装雾凇 cd ~/ git clone https://github.com/rime/plum.git plum cd plum bash rime-install iDvel/rime-ice:others/recipes/full # 更多参考 https://github.com/iD…...

别再只会让舵机转圈了!用Arduino和SG90实现精准角度控制的保姆级教程

从转圈到精准控制&#xff1a;Arduino与SG90舵机的高级应用指南 第一次接触舵机时&#xff0c;我们往往满足于让它简单地来回转动——这确实很有趣&#xff0c;就像给玩具注入了生命。但当你真正想用它构建一个机械臂、智能云台或是自动喂食器时&#xff0c;这种粗放的控制方式…...

基于IEEE39节点系统的风力发电机组并网改造与稳定性研究

基于IEEE39节点系统的风力发电机组并网改造与稳定性研究 摘要 随着可再生能源在电力系统中占比的不断提升,风电并网技术已成为电力系统领域的研究热点。本文针对IEEE39节点标准测试系统,将其工作频率从60Hz改造为50Hz,并将30、32、34、37号节点的同步发电机分别替换为不同…...

快速部署SQL Server 2022:Docker容器化实践指南

1. 为什么选择Docker部署SQL Server 2022&#xff1f; 作为开发者&#xff0c;我经历过太多在本地环境安装数据库的噩梦——依赖冲突、版本不兼容、配置复杂&#xff0c;往往折腾半天才能跑起来。直到我开始用Docker部署SQL Server&#xff0c;才发现原来搭建数据库环境可以这么…...

Delphi网络编程实战:UDP通信与多线程网络优化详解

前两篇文章分别讲解了Delphi中基于Indy组件的TCP点对点通信、HTTP/HTTPS接口交互&#xff0c;覆盖了可靠连接、Web对接两大常用场景。本篇将深入讲解UDP通信&#xff0c;同时补充多线程网络编程、数据传输防护、常见故障排查等进阶内容&#xff0c;补齐Delphi网络开发的核心模块…...

3大场景×5项优化:ComfyUI视频合成VHS_VideoCombine节点全场景应用指南

3大场景5项优化&#xff1a;ComfyUI视频合成VHS_VideoCombine节点全场景应用指南 【免费下载链接】ComfyUI-VideoHelperSuite Nodes related to video workflows 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-VideoHelperSuite 一、基础认知&#xff1a;视频合…...

详解bat脚本:语法、常见用法、注意事项、示例

文章目录前言1.什么是BAT 脚本2.基本语法2.1 注释2.2 基本命令执行3.常用命令详解4.变量使用1. 定义变量2. 使用变量&#xff08;要用 % 括起来&#xff09;5.流程控制5.1 if 条件判断基本语法&#xff1a;常用比较&#xff1a;示例&#xff1a;5.2 for 循环遍历文件&#xff0…...

Phi-4-mini-reasoning科研协作:Jupyter Notebook嵌入式推理插件

Phi-4-mini-reasoning科研协作&#xff1a;Jupyter Notebook嵌入式推理插件 1. 模型简介 Phi-4-mini-reasoning是一个基于合成数据构建的轻量级开源模型&#xff0c;专注于高质量、密集推理的数据处理能力。作为Phi-4模型家族的一员&#xff0c;它经过专门微调以提升数学推理…...