详解关于php的xdebug配置(编辑器vscode)
时间:2022-07-27
本文章向大家介绍详解关于php的xdebug配置(编辑器vscode),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
虽然说echo和print_r是公认的最实用的调试工具,但是效率真的没有可视化的直接断点那么高。这里简单介绍如果安装及配置xdebug for vscode
一、PHP环境处的配置
1、编译安装
下载及编译php,因为我所在的公司php版本是5.4的,所以去xdebug官网上选了相对比较底的版本.您也可以根据你们的实际情况下载相应的xdebug版本:https://xdebug.org/download.php
wget https://xdebug.org/files/xdebug-2.4.1.tgz
tar -xvf xdebug-2.4.1.tgz
cd xdebug-2.4.1/
phpize
./configure
make install
make最终结束输出:
make install最终结束输出:
2、配置php.ini文件
这个是我的配置。为了使得可配性更强。我将xdebug配置写到:/etc/php.d/xdebug.ini
[Xdebug]
zend_extension="/usr/lib64/php/modules/xdebug.so" #这里改成你在make install后的路径。
xdebug.remote_enable = true
xdebug.remote_host = 10.0.5.176 #改成你的vscode所以机器的ip地址
#default port 9000
xdebug.remote_port = 9000 #如果9000端口冲突了,可以换一个。不过相应的vscode配置也要相应的改变
xdebug.profiler_enable = on
xdebug.auto_trace = On
xdebug.show_exception_trace = On
xdebug.remote_autostart = On
xdebug.collect_vars = On
xdebug.collect_return = On
xdebug.remote_handler =dbgp
xdebug.max_nesting_level = 10000
xdebug.trace_output_dir = "D:/code/videochat" #我这里写的是php代码所在的路径
二、配置vscode
1、使用vscode打开php工程后。安装php-debug及生成调试配置文件,如图所示,依次点击这些按钮
2、如下操作后,会出现如下选项框。选中php即可
3、选中后,会出现一个json的配置文件
修改此json文件,注意serverSourceRoot改成你服务器上,php所在的路径。不然即使断下来后,会出现找不到文件的异常
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"stopOnEntry":false,
"localSourceRoot": "${workspaceRoot}",
"serverSourceRoot": "/work/videochat"
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
}
]
}
最后,在vscode里断点好后。按F5,等待请求,即可享受图形化的调试乐趣
以上就是本文的全部内容,希望对大家的学习有所帮助。
- ASP.NET Core的路由[5]:内联路由约束的检验
- .NET Core跨平台的奥秘[下篇]:全新的布局
- Equation Group泄露文件分析
- ModelBinder——ASP.NET MVC Model绑定的核心
- 一句代码实现批量数据绑定[下篇]
- 三种属性操作性能比较:PropertyInfo + Expression Tree + Delegate.CreateDelegate
- 解密Myspace密码的姿势
- weblogic安全配置二三事
- 开发自己的Data Access Application Block[下篇]
- 【CSS】格仔背景
- 这年头真的还有USB设备是安全的吗?
- js的动态加载、缓存、更新以及复用(一)使用范围:遇到的问题:目标:页面结构:正文
- js的动态加载、缓存、更新以及复用(二)恼人的命名冲突
- 以【猫叫、老鼠跑、主人醒】为例子,使用 javascript 来实现 观察者模式 (有在线演示)
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- Elasticsearch升级踩坑记之使用snapshot备份数据
- RabbitMQ的安装及集群搭建方法
- CentOs7搭建rabbitmq集群
- Rabbitmq haproxy keepalived ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN.
- IDEA maven+spring mvc简单项目
- 程序员用python给了女友一个七夕惊喜!
- 微信小程序开发实战(21):发起HTTPS请求
- 打破国外垄断,开发中国人自己的编程语言(2):使用监听器实现计算器
- 自定义你的github主页
- nginx配置ssl证书实现https
- 有意思的 Node.js 内存泄漏问题
- 【技术干货】聊聊在大厂推荐场景中embedding都是怎么做的
- 特征工程|连续特征的常见处理方式(含实例)
- 一个请求过来,Spring MVC 是如何找到正确的 Controller 的?
- 吴师兄导读:如何快速入门数据结构和算法