vscode编写php好用吗,vscode

# 是什么

微软出的重新定义编码的一款免费开源跨平台的文本编辑器,媲美IDE。

# 优势

我用过很多文本编辑器 比如notepad、editplus、atom、bracket、sublime等。

比前两个界面好,扩展多。

比atom性能好,人家作者是算法大师。

比bracket扩展性强,比只限于前端。

比sublime来说我觉得最主要是易用性、扩展性上(开源)。

# 下载

https://code.visualstudio.com/

![](https://box.kancloud.cn/7edb1f4e4bee8340a797041177766e44_497x607.png)

注意选择版本。

# 安装

和正常文本编辑器一样安装,值得注意的是最好安装在C盘,因为我发现我安装在其他盘,重装系统后,每次打开编辑器更新 他都给我C盘安装一遍,然后再打开 又提示更新。

# 如何做php开发使用

## 确保本地环境变量里有php

vscode最初是开发前端node 那一套的,其他语言的支持比较后,所以我一直没使用。直到最近更新频繁,我重装了系统,就想体验体验到底能不能用于php项目开发 替代我的sublime,才发现基本上可以了,除了一些小问题。

对于php语言的支持,它是language server方式支持的。建议环境变量里有php 以后跑server、终端也方便。

## 国际化

装好了就是本地语言

## package control center?

自带ext 扩展管理

## 欢迎界面

![](https://box.kancloud.cn/4b09a6774191d8a60065411838592c25_1920x1046.png)

我觉得vscode 比st 良心的第一个就是欢迎界面。一目了然,信息量足啊。不像st那个空空的主界面。

## 使用php

### 安装php extension pack

咱们点击欢迎界面->自定义->PHP

然后vscode 就默默给我们装一个php集合扩展:php extension pack

![](https://box.kancloud.cn/442133a3c606c1e2b6bd1569b422e63d_963x637.png)

包含了 php debug 和 PHP IntelliSense

### 配置php执行文件

装好之后,你打开一个php文件。如果你没配环境变量他会提示你php language server 无法启动之类的。

你需要配置一个 “php.executablePath" 指向你的php执行文件。就像下面:

`"php.executablePath": "D:/wamp64/bin/php/php7.0.10/php.exe",`

vscode的配置项做的比sublime好的地方是。双栏打开,点击左侧配置值会自动复制到右侧:

![](https://box.kancloud.cn/04edba054f32dae3ffb5a7da422f743e_829x533.png)

![](https://box.kancloud.cn/45c44d667b1a256eb8fdbc99a4ad8255_1342x153.png)

![](https://box.kancloud.cn/0d273489fe2850c68fefe3b9e5073f87_1481x137.png)

太tm 人性化了。这才是我们想要的配置。

而我们sublime怎么做 打开默认配置,打开用户配置,在默认配置里搜索到匹配配置,复制到用户配置。效率太低了。

![](https://box.kancloud.cn/8ddbe9de6002443303a8a91cb12fdadf_1549x924.png)

![](https://box.kancloud.cn/7fff626cb6f7988f29227a5d15e139ea_1519x666.png)

而且除了软件配置外 还有插件配置。给你一个插件列表。

![](https://box.kancloud.cn/3a9e002f2417a7d60906152b31ea44a4_1317x1035.png)

插件配置是开发者开放的。往往用户配置里没有一项,默认配置里很多项。甚至很多隐藏配置在readme 和github上。

> 总结配置的体验就可以发现 vscode做的是工程软件,sublime是极客软件,新手不友好。

我觉得好的软件就是**Don't make me think, Don't make me wrong** 。

### 安装 php 相关扩展

我们先看扩展管理界面

![](https://box.kancloud.cn/c532e8f1349524d49b4bbe63660baa07_438x982.png)

点击“扩展”图标 出现的,在这里你就可以直接输入关键字 搜索扩展。

默认点击进来显示的已安装扩展。

![](https://box.kancloud.cn/cad98e0ac9aa02abd349d15bd84f12c2_635x548.png)

自带的 不需要手动安装 。

参照我以前写的那个[sublime培训 密码: 6jyy](https://pan.baidu.com/s/1nvwV7qL):逐一查找 安装吧

![](https://box.kancloud.cn/750be4f8414113a32a1cec8edaaa5438_1183x826.png)

最终发现只需要以下几个插件就可以足够php开发了:

* CodeRunner, 非常方便的代码执行软件,支持多种语言。

![](https://box.kancloud.cn/19c0f13d14fd209403df33c6332d86de_1539x696.png)

![](https://box.kancloud.cn/40975e2b93b3fadbcc103f2f7894ab58_937x143.png)

* Composer 现在php包管理工具

要配置执行路径

`"composer.executablePath": "C:/ProgramData/ComposerSetup/bin/composer.bat",`

* php debug

![](https://box.kancloud.cn/2b38f366683d309dfeef3621ecbdc3a3_1279x627.png)

比sublime界面好看多了

* PHP DocBlocker

写注释的人都知道

* SonarLint

代码质量管理工具,需要Java 支持JavaScript、php 就是报错有点严格。

这个强烈建议装一下:

![](https://box.kancloud.cn/2bbd18baefaae34ef5e4333acf7382f3_1088x446.png)

有了它你可以获得错误提示和优化建议,甚至可以提示未定义的变量,其他文本编辑器可做不到。

### 安装增强插件

* advance new file

高级新建文件

* Alignment

代码 “=” 对齐插件和st的像但是 必须选中区域对齐,不能自动识别一大段=号的,有时候还对不齐

* All Autocomplete

自动完成插件

* Apache conf

apache 语法高亮插件

* AutoFileName

路径补全插件

* Change Case

用于转换命名方式,如驼峰转下划线

* Chinese Translation

中文繁体转换 支持香港 、台湾等。

* Clipboard History

剪切板管理软件,方便找多次复制里的内容

* Close tag

闭合最后的标签

* Docker

以后可能会用上吧

* expand-selection-to-scope

扩大所选范围

* File Utils

文件操作插件(重命名、移动、删除等)

* Generic Remote Debugger

远程调试插件,看起来很牛逼的样子,可以调试线上项目

* Markdown All in one

markdown一篮子

* Markdown Preview Enhanced

markdown 预览增强 支持公式 导出啥的

* Markdown Theme Kit

markdown编辑时文件主题

* markdownlint

markdown语法错误检测

* NGINX syntax

Nginx服务器配置语法支持

* paste image to qiniu

粘贴截屏图片直接上传七牛

* Path Autocomplete

路径补全工具

* Python

蟒蛇支持

* Settings Sync

配置同步插件,说实话我是被这个插件吸引过来的,我st重装系统后,忘了备份好多东西没了。

这个可以同步到github上的

* Sublime Commands

支持一些sublime的命令 如分割成多行,合并单行等

* Sublime Text Keymap

支持sublime的键盘设置习惯(不是完全支持)

* Sublime Text Extension Pack

包括了Sublime Text Keymap 、Expand Selection To Scope、Close HTML / XML Tag、Sublime Commands 几个插件

* Tranpose

交换光标插件 一般是两个

### 安装编码插件

vscode中文支持良好不需要插件

### 前端

* Color Highlight

css 颜色高亮

* Color Picker

拾色器

* ESLint

前端报错检测

* Image Preview

图片预览,直接显示在css 当前行前面

* jQuery Code Snippets

写jquery的都想要

### 编码

* Codelf

命名变量搜索插件

* Live Server

直接在浏览器里同步预览项目

* Live Server Preview

在侧栏列同步预览项目

* Local History

本地文件历史

* Log File Highlighter

日志文件高亮

* Partial Diff

选择文本进行可视化比较

* Typewriter Noises

打字机效果,倍爽

* VS Code database

vscode 中管理数据库

### 项目管理

* EditorConfig

项目风格统一神器

* Gist Extension

代码片段管理

* Git Project Manager

git项目管理器,可以搜索本地git项目

* Project Manager

项目管理工具

![](https://box.kancloud.cn/1fc276b9b42d45f0801040b9ebff9722_999x570.png)

![](https://box.kancloud.cn/d7fd07d18c9705c259a3b477159fa6b8_959x237.png)

保存项目后就可以来回切换了。

* sftp

sftp管理

* TortoiseSVN

没有svn 插件,不高兴

* WakaTime

程序员编程时间管理插件 能精确统计一周内每个项目花了多少时间,跨编辑器跨IDE,大神必备哦。

## 一些问题

### 自动完成不支持try catch补全

已报issue

### 符号链接 ctrl+r不起作用

去键盘快捷方式里 干掉其他占用ctrl+r的命令

![](https://box.kancloud.cn/821cbe571c45998607ee2b233f7e4204_363x307.png)

保留至:

![](https://box.kancloud.cn/4eb3e42b375d88b3ba89d2068c3ed019_1499x282.png)

默认会是打开最近浏览文件,我才不稀罕

### 打开文件夹是切换当前工作空间

我也不知道怎么配 但是我知道先新开一个窗口就好啦

![](https://box.kancloud.cn/4bc305945475c9bd1918ed9ad85ed826_592x65.png)

## 终端

vscode另外一个优于sublime的功能就是终端,*ctrl+~* 打开

![](https://box.kancloud.cn/06ecb51530a1f7d9df144863f2f446e3_1505x244.png)

我用他多开 多执行cli 就相当于多进程了。

## 我的配置

我的是基于win的,关键处打码,嘿嘿:

~~~

// 将设置放入此文件中以覆盖默认设置

{

"php.executablePath": "D:/wamp64/bin/php/php7.0.10/php.exe",

"php.validate.executablePath": "D:/wamp64/bin/php/php7.0.10/php.exe",

"php.validate.run": "onType",

"window.zoomLevel": 1,

"window.restoreWindows": "one",

"window.openFoldersInNewWindow": "off",

"files.autoSave": "off",

"window.openFilesInNewWindow": "on",

"composer.executablePath": "C:/ProgramData/ComposerSetup/bin/composer.bat",

"extensions.ignoreRecommendations": false,

"sonarlint.ls.javaHome": "C:/Program Files/Java/jre1.8.0_141",

"sync.gist": "XXXXXXXXXXXXXXXXXXXXXXXXXX",

"sync.lastUpload": "2017-07-23T13:32:53.762Z",

"sync.autoDownload": false,

"sync.autoUpload": false,

"sync.lastDownload": "",

"sync.forceDownload": false,

"sync.anonymousGist": false,

"sync.host": "",

"sync.pathPrefix": "",

"sync.quietSync": false,

"sync.askGistName": false,

"gist.oauth_token": "XXXXXXXXXXXXXXXXXXXXXX",

"local-history.path": "",

"search.useIgnoreFilesByDefault": true,

"projectManager.svn.ignoredFolders": [

"node_modules",

"out",

"typings",

"test",

".history"

],

"projectManager.git.ignoredFolders": [

"node_modules",

"out",

"typings",

"test",

".history"

],

"search.exclude": {

"**/node_modules": true,

"**/bower_components": true,

".history": true

},

"php.suggest.basic":false

}

~~~

# 后记:

基本使用和sublime差不多,php主要用到语法报错、自动完成、快速切换文件,查看当前类的所有方法符号链接,切换定义等,还能行内看定义和使用了多少个地方。

查看定义:

![查看定义](https://box.kancloud.cn/0bfacca308dc418e9ab344db67d3fa1a_1144x427.png)

跳转定义:

![](https://box.kancloud.cn/20b6b781804c92b6db98044cc0d0215c_554x112.png)

查看所有引用:

![](https://box.kancloud.cn/77254f56396b89a2acf6ea9a3787f5c7_542x61.png)

格式化代码

欢迎给我提供建议。

你可能感兴趣的:(vscode编写php好用吗)