用Visual Studio Code Debug世界上最好的语言
前言
这阵子因缘巧合接手了一个辣鸡项目,是用世界上最好的拍黄片写的,项目基本是另一个小伙伴在撸码,我就兼职打杂和发布做点运维的工作。
然后昨天项目上了测试版之后,一用起来Error满天飞了。让小伙伴查了很久都没有头绪,实在尴尬,只好自己动手了...
作为一个后端狗,虽然知道PHP大体原理和框架,看着项目的业务逻辑也大体知道个所以然,在此之前还是没撸过代码的。
看代码基本是Visual Studio Code或者HBuilder工具,本地跑代码很白痴的在用phpStudy。
Error出来了,第一反应就是debug咯...然后问了下小伙伴他以前怎么玩的,答曰:echo。
一口老血都...
查了下谷歌发现,Visual Studio Code + 插件是完全可以用来调试PHP的,所以就撸起了。
Visual Studio Code + php-debug插件 + phpStudy + xdebug
安装Visual Studio Code
首先肯定是先下载Visual Studio Code 咯。
安装好之后,随便在一个文件夹内鼠标“右键”,都能看到Open with code,打开之后如下图:
安装Visual Studio Code php-debug插件
装好VS Code之后,接下来是安装一下PHP-Debug插件了。我们在插件商城搜索一下php,排名第二的PHP Debug就是我们要的插件了。
如下图:
装好了之后重启一下vs code即可。
phpStudy
对于我这种懒人来说,去配置什么PHP运行环境肯定是不愿意的,那么类似的集成环境有么?
小伙伴和我说,你下个phpStudy撸就算了,别去倒腾什么版本了。
然后...
下载好了安装完了,打开程序如下图:
看了下功能,其实这个软件就是集成了各种版本的PHP,可以方便切换PHP版本;同时自带一个Apache和MySQL,各种配置管理起来也挺方便的。
(感觉dalao们应该不怎么会用这么白痴的东西,233...
装好之后,启动一下服务,点击一下phpMyAdmin,看看它打开的网站是否能登录到本地的MySQL数据库。
如果可以,说明PHP环境应该是正常的了;如果有问题,请自行谷歌了...
接着切换PHP版本到意向版本,点击一下运行模式旁边的“切换版本”就可以选择版本了。
xdebug设置
xdebug是什么呢?
Xdebug作为PHP调试工具,提供了丰富的调试函数,
也可将Xdebug安装配置为zend studio、editplus调试PHP的第三方插件,
通过开启自动跟踪(auto_trace)和分析器功能,可以直观的看到PHP源代码的性能数据,
以便优化PHP代码。
引用自:[PHP调试工具Xdebug安装配置教程]
(http://www.cnblogs.com/qiantuwuliang/archive/2011/01/23/1942382.html)
我们可以在xdebug.org(自备梯子)上面下载到PHP各个版本的xdebug dll使用。
不过当我打开phpStudy的php-ini打算手动开启debug的时候,非常高兴得发现已经phpStudy已自带了对应版本的xdebug,而且路径都配好了。
phpStudy的php.ini在“其他选项-打开配置文件-php-ini”,如下图:
把文档拉到最后,看得到xdebug的配置如下:
phpStudy已经帮我们配置好xdebug dll的路径了,我们只需要手动在zend_extension上面添加远程调试和自动启动配置即可,代码如下:
xdebug.remote_enable = 1
xdebug.remote_autostart= 1
完整配置如下:
[XDebug]
;xdebug.profiler_output_dir="C:\phpStudy\tmp\xdebug"
;xdebug.trace_output_dir="C:\phpStudy\tmp\xdebug"
xdebug.remote_enable = 1
xdebug.remote_autostart= 1
;你的PHP版本的php_xdebug.dll,phpStudy自动设置的
zend_extension="C:\phpStudy\php\php-5.5.38\ext\php_xdebug.dll"
保存文件,重启一下phpStudy服务。
Visual Studio Code 设置用户配置和调试配置
这个时候,我们随便在PHP文件夹中打开vs code,vs code会自动提示我们:Cannot validate since no PHP executable is set. Use the setting 'php.validate.executablePath' to configure the PHP executable.
嗯,没有设置PHP执行文件,可以通过设置php.validate.executablePath属性来配置它。
这个在哪配置呢?在“文件-首选项-设置”,打开之后如下图:
这个php.validate.executablePath对应就是当前phpStudy中运行的php.exe的路径,可以在phpStudy-其他选项菜单-打开文件位置-PHP中找到此路径。
保存好了之后,回到Visual Studio Code界面,转到Debug,选择添加配置,之后选择PHP,生成如下图的launch.json:
不用改任何东西,直接开撸...
开启Debug
确保phpStudy启动了,网站也正常运行起来了,然后在Visual Studio Code中启动调试,打上要的断点,接着启动调试。
如下图:
接着访问你要调试的页面对应的PHP代码,打上你的断点,华丽丽的Debug出来了...
F10单步调试,F11跳入函数,F5直接运行之类的快捷键自己玩吧。
其他运行环境下的配置
基本没什么区别,配置php.ini,下载到对应版本的xdebug.dll,php.validate.executablePath配置正确就完事。
其他参考链接:
PS:果然是世界上最好的语言...(逃
用Visual Studio Code Debug世界上最好的语言的更多相关文章
- 用Visual Studio Code Debug世界上最好的语言(Mac篇)
用Visual Studio Code Debug世界上最好的语言(Mac篇) 首先,你要有台Macbook Pro,接着才继续看这个教程. PS:Windows用户看这里用Visual Studio ...
- 剖析并利用Visual Studio Code在Mac上编译、调试c#程序
0x00 前言 一周多以前的微软的Build大会上,微软发布了一个让很多人眼前一亮的工具,也是本文的主角——Visual Studio Code.很多使用Windows的朋友都很高兴,认为又多了一个很 ...
- 剖析并利用Visual Studio Code在Mac上编译、调试c#程序【转】
0x00 前言 一周多以前的微软的Build大会上,微软发布了一个让很多人眼前一亮的工具,也是本文的主角——Visual Studio Code.很多使用Windows的朋友都很高兴,认为又多了一个很 ...
- ASP.NET Core 中文文档 第二章 指南(1)用 Visual Studio Code 在 macOS 上创建首个 ASP.NET Core 应用程序
原文:Your First ASP.NET Core Application on a Mac Using Visual Studio Code 作者:Daniel Roth.Steve Smith ...
- Visual Studio Code 1.0发布:100+语言,300+pull请求,1000+扩展
在第一个预览版发布一年后,微软发表了Visual Studio Code 1.0. 在//BUILD 2015大会上,微软宣布,他们的一个团队需要几个月来创建Visual Studio Code的第一 ...
- 再整理:Visual Studio Code(vscode)下的通用C语言环境搭建
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://www.cnblogs.com/czlhxm/p/11794743.ht ...
- 配置Visual Studio Code在Mac上作为.NET Core的IDE
通过邮件发一文档测试一下. 关于Visual Studio Core 官网:https://www.visualstudio.com/en-us/products/code-vs.aspx 安装 也是 ...
- Visual Studio Code mac OS 安装 中文简体语言包
先下载中文简体语言包 官网 https://marketplace.visualstudio.com/search?target=VSCode&category=Language%20Pack ...
- 在ubuntu下使用visual studio code编写python
感觉有了visual studio code之后,不管编写什么语言的代码都可以,简单安装对应的语言插件即可. 这不轮到了最近比较热的python语言,蹭着AI的热度,python语言成为了工程师们又一 ...
随机推荐
- Bootstrap入门(六)按钮和图片
Bootstrap入门(六)按钮和图片 先引入本地的CSS文件 <link href="css/bootstrap.min.css" rel="styleshe ...
- [原创]Hadoop-2.5.2-HA原文译
使用the Quorum Journal Manager实现HDFS高可用 2017/1/22 11:57:22 原文 目的(Purpose) * 这个指南提供了对HDFS-HA特性,使用QJM特性如 ...
- SQL Server 2014内存优化表的使用场景
SQL Server 2014内存优化表的使用场景 最近一个朋友找到走起君,咨询走起君内存优化表如何做高可用的问题 大家知道,内存优化表是从SQL Server 2014开始引入,可能大家对内存优化表 ...
- css水平垂直居中
margin法(水平居中) 需要满足三个条件: 元素定宽 元素为块级元素或行内元素设置display:block 元素的margin-left和margin-right都必须设置为auto 三个条件缺 ...
- C++编程练习(11)----“图的最短路径问题“(Dijkstra算法、Floyd算法)
1.Dijkstra算法 求一个顶点到其它所有顶点的最短路径,是一种按路径长度递增的次序产生最短路径的算法. 算法思想: 按路径长度递增次序产生算法: 把顶点集合V分成两组: (1)S:已求出的顶点的 ...
- 简单谈谈JavaScript中的this
是夜,想着考量下小黄毛近期的JavaScript进阶如何了,鉴于近期一直在接触Vue 2.0,索性就围绕this编写了个代码片段, 给其一个测量,毕竟写js的程序员都知道,JavaScript的函数调 ...
- mybatis入门-框架原理
mybatis是什么 在说mybatis原理之前,我们有必要知道,mybatis到底是个什么东西.mybatis是一个持久层的框架.是一个不完全的ORM框架.因为它需要由程序员自己去写sql语句.但是 ...
- Angular企业级开发(7)-MVC之控制器
1.MVC中的控制器 AngularJS的控制器主要为了把模型和视图连接在一起.大多数业务逻辑操作都会放在视图对应的控制器中.当然如果我们能够把业务逻辑放到后端的REST服务中,就可以开发轻量级Ang ...
- Python求解进制问题(阿里巴巴2015笔试题)
问题描述:用十进制计算30的阶乘,然后把结果转换成三进制表示,那么该进制表示的结果末尾会有多少个连续0?解析:作为笔试题的话,要想按照题意先把阶乘结果计算出来再转换成三进制最后再数0的个数,时间肯定来 ...
- Centos更换yum源
Centos更换yum源 步骤如下: 备份原始源 cd /etc/yum.repos.d/ mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/ ...