详解关于php的xdebug配置(编辑器vscode)


Posted in PHP onJanuary 29, 2019

虽然说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最终结束输出:

详解关于php的xdebug配置(编辑器vscode)

make install最终结束输出:

详解关于php的xdebug配置(编辑器vscode)

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及生成调试配置文件,如图所示,依次点击这些按钮

详解关于php的xdebug配置(编辑器vscode)

详解关于php的xdebug配置(编辑器vscode)

2、如下操作后,会出现如下选项框。选中php即可

详解关于php的xdebug配置(编辑器vscode)

3、选中后,会出现一个json的配置文件

详解关于php的xdebug配置(编辑器vscode)

修改此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,等待请求,即可享受图形化的调试乐趣

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP实现验证码功能
Oct 09 PHP
MVC模式的PHP实现
Oct 09 PHP
PHP 输出简单动态WAP页面
Jun 09 PHP
PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)
Aug 31 PHP
PHP-redis中文文档介绍
Feb 07 PHP
解析Ubuntu下crontab命令的用法
Jun 24 PHP
解析php取整的几种方式
Jun 25 PHP
PHP魔术方法__GET、__SET使用实例
Nov 25 PHP
PHP中的Iterator迭代对象属性详解
Apr 12 PHP
laravel-admin 后台表格筛选设置默认的查询日期方法
Oct 03 PHP
PHP高并发和大流量解决方案整理
Mar 09 PHP
如何用PHP实现分布算法之一致性哈希算法
May 26 PHP
PDO::inTransaction讲解
Jan 28 #PHP
PDO::getAvailableDrivers讲解
Jan 28 #PHP
PDO::getAttribute讲解
Jan 28 #PHP
PDO::exec讲解
Jan 28 #PHP
PDO::errorInfo讲解
Jan 28 #PHP
PDO::errorCode讲解
Jan 28 #PHP
PHP关于foreach复制知识点总结
Jan 28 #PHP
You might like
php bootstrap实现简单登录
2016/03/08 PHP
Laravel中log无法写入问题的解决
2017/06/17 PHP
javascript document.images实例
2008/05/27 Javascript
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
Js 弹出框口并返回值的两种常用方法
2010/12/30 Javascript
了解一点js的Eval函数
2012/07/26 Javascript
利用jquery动画特效和css打造的侧边弹出垂直导航
2014/04/04 Javascript
DOM基础教程之使用DOM设置文本框
2015/01/20 Javascript
javascript笛卡尔积算法实现方法
2015/04/08 Javascript
webpack进阶——缓存与独立打包的用法
2017/08/02 Javascript
使用vue-resource进行数据交互的实例
2017/09/02 Javascript
JS中Attr的用法详解
2017/10/09 Javascript
AngularJS实现自定义指令及指令配置项的方法
2017/11/20 Javascript
js实现二级菜单点击显示当前内容效果
2018/04/28 Javascript
深入分析element ScrollBar滚动组件源码
2019/01/22 Javascript
ES6基础之字符串和函数的拓展详解
2019/08/22 Javascript
详解vue中v-bind:style效果的自定义指令
2020/01/21 Javascript
NodeJS模块Buffer原理及使用方法解析
2020/11/11 NodeJs
在Lighttpd服务器中运行Django应用的方法
2015/07/22 Python
Django添加feeds功能的示例
2018/08/07 Python
python实现遍历文件夹修改文件后缀
2018/08/28 Python
Python使用matplotlib绘制Logistic曲线操作示例
2019/11/28 Python
什么是Python中的匿名函数
2020/06/02 Python
python如何构建mock接口服务
2021/01/28 Python
利用Python实现最小二乘法与梯度下降算法
2021/02/21 Python
幼儿教师考核制度
2014/01/25 职场文书
国际贸易专业个人求职信格式
2014/02/02 职场文书
小学生安全演讲稿
2014/04/25 职场文书
期末评语大全
2014/05/04 职场文书
体育活动总结范文
2014/05/04 职场文书
学习型班组申报材料
2014/05/31 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
优秀少先队辅导员事迹材料
2014/12/24 职场文书
婚礼女方父母答谢词
2015/01/04 职场文书
QT与javascript交互数据的实现
2021/05/26 Javascript
教你怎么用PyCharm为同一服务器配置多个python解释器
2021/05/31 Python