从 PhpStorm 到 VS Code,最需要适应的不是编辑器本身,而是插件、快捷键和一些操作习惯。

PhpStorm 很多功能是内置的,而 VS Code 更依赖插件和项目自身的工具。因此,迁移时重点把常用功能补齐即可,没有必要把所有 PhpStorm 功能全部搬过来。

一、插件清单

PHP 开发

  • PHP Intelephense:PHP 开发核心插件,提供代码补全、跳转定义、查找引用、代码分析等功能。

  • PHP Debug:Xdebug 调试支持。

  • PHP Namespace Resolver:自动导入 PHP Namespace,适合经常需要添加 use 的项目。

  • Composer:Composer 依赖管理。

  • PHP CS Fixer:PHP 代码格式化。

  • PHPUnit Test Explorer:在 VS Code 中运行和管理 PHPUnit 测试。

  • EditorConfig:统一项目的缩进、换行符等编辑器配置。

如果是 PHP 后端项目,前几个基本就够用了。

其他常用插件

  • GitLens:增强 Git 功能,可以查看代码作者、提交记录和文件历史。

  • Error Lens:将错误和警告直接显示在代码行旁边。

  • Todo Tree:集中查看 TODO、FIXME 等代码标记。

  • Docker:管理 Docker 镜像、容器和 Compose。

  • REST Client:直接在 VS Code 中测试 HTTP API。

  • DotENV:.env 文件语法高亮。

  • YAML:YAML 文件语法检查和提示。

前端项目

如果项目同时包含 Vue、React 或其他前端代码,可以增加:

  • Prettier:JavaScript、TypeScript、Vue、JSON、CSS 等代码格式化。

  • ESLint:JavaScript、TypeScript 和 Vue 项目的代码检查。

需要注意,Prettier 主要用于前端代码,不建议把它作为 PHP 的主要格式化工具。PHP 项目可以使用 PHP CS Fixer、Laravel Pint 等工具。

二、快捷键映射方案

方式一:安装 IntelliJ 快捷键插件

如果已经习惯 PhpStorm,可以直接安装:

IntelliJ IDEA Keybindings

这样可以继续使用大部分 JetBrains 系列 IDE 的快捷键,减少刚开始迁移时的不适应。

方式二:手动调整常用快捷键

如果不想安装快捷键插件,可以在 keybindings.json 中设置。

[
    // 文件搜索(接近 PhpStorm 的 Ctrl + N)
    {
        "key": "ctrl+n",
        "command": "workbench.action.quickOpen"
    },

    // 符号搜索
    {
        "key": "ctrl+alt+shift+n",
        "command": "workbench.action.gotoSymbol"
    },

    // 快速修复(接近 PhpStorm 的 Alt + Enter)
    {
        "key": "alt+enter",
        "command": "editor.action.quickFix"
    },

    // 复制当前行
    {
        "key": "ctrl+d",
        "command": "editor.action.copyLinesDownAction"
    },

    // 删除当前行
    {
        "key": "ctrl+y",
        "command": "editor.action.deleteLines"
    }
]

不过不建议修改太多快捷键。

VS Code 本身有一套比较好用的快捷键,尤其是:

Ctrl + P              快速打开文件
Ctrl + Shift + P      命令面板
Ctrl + T              搜索符号
F12                   跳转定义
Shift + F12           查找引用
F2                    重命名
Ctrl + .              快速修复
Shift + Alt + F       格式化代码
Ctrl + `              打开终端

刚开始可以保留 PhpStorm 的常用快捷键,使用一段时间后再逐渐适应 VS Code 的快捷键。

三、VS Code 其他插件推荐

除了 PHP 开发相关插件,还有一些插件比较实用。

  • Prettier:自动格式化前端代码,统一缩进、引号等格式。

  • ESLint:检查 JavaScript、TypeScript、Vue 等代码问题。

  • GitLens:查看代码作者、提交记录和文件历史。

  • Error Lens:直接在代码行显示错误和警告。

  • Todo Tree:集中查看项目中的 TODO、FIXME 等标记。

  • EditorConfig:统一不同开发环境下的编辑器配置。

如果主要做 PHP 后端开发,不建议一次安装大量插件。

插件太多不仅会增加 VS Code 的启动时间,也可能出现快捷键冲突、格式化冲突以及语言服务冲突。

一般按照项目实际需要安装即可。

四、VS Code 一些技巧

1. 调整字体大小

Ctrl + +
Ctrl + -
Ctrl + 0

分别用于放大、缩小和恢复编辑器字体大小。

2. 快速打开文件

Ctrl + P

输入文件名即可快速打开文件。

对于 PHP 项目来说,这个功能非常实用,不需要再通过目录一级一级寻找文件。

3. 打开命令面板

Ctrl + Shift + P

VS Code 中很多功能都可以通过命令面板搜索。

例如:

Format Document
Git
Reload Window
Developer
Terminal

不知道某个功能在哪里时,可以先尝试使用命令面板。

4. 快速打开终端

Ctrl + `

对于 PHP 后端开发来说,VS Code 的终端基本可以替代很多 IDE 中的工具窗口。

例如:

composer install
composer update

php bin/hyperf.php start

php artisan serve

vendor/bin/phpunit

编辑代码和执行命令可以直接在一个窗口完成。

5. 快速跳转代码

常用:

F12

跳转到定义。

Shift + F12

查找引用。

F2

重命名变量、方法、类等符号。

对于 PHP 项目来说,配合 PHP Intelephense 使用会比较方便。

6. 项目级配置

可以在项目根目录创建:

.vscode/
└── settings.json

例如:

{
    "editor.formatOnSave": true,
    "editor.tabSize": 4,
    "editor.insertSpaces": true,
    "files.trimTrailingWhitespace": true,
    "files.insertFinalNewline": true,

    "[php]": {
        "editor.formatOnSave": true
    }
}

如果团队项目已经有 .editorconfig、PHP CS Fixer、PHPStan 等配置,优先遵循项目配置,不要在 VS Code 中重复定义规则。

7. 不要把 VS Code 当成 PhpStorm 的完全替代品

PhpStorm 和 VS Code 的定位并不完全一样。

PhpStorm 更偏向完整 IDE,很多 PHP 功能开箱即用。

VS Code 更偏向可扩展的编辑器,需要根据自己的开发方式组合插件和工具。

所以从 PhpStorm 切换到 VS Code 后,不需要追求:

“把 PhpStorm 的每一个功能都在 VS Code 里面找出来。”

把日常真正需要的功能配置好即可。

对于 PHP 后端开发来说:

PHP Intelephense
PHP Debug
PHP CS Fixer
PHPUnit
GitLens
Docker
Terminal

基本就可以覆盖日常开发需求。

剩下的插件,根据项目实际情况增加即可。