PHP Intelephense需正确配置PHP路径、语言版本并禁用VS Code内置PHP支持,否则提示失效;须认准Ben Mewburn发布版,Windows路径反斜杠需双写,修改配置后必须重启VS Code窗口。
PHP Intelephense 不是“装上就灵”的插件——它依赖准确的 PHP 环境路径
、合理的语言级别设定,以及对默认内置 PHP 支持的主动禁用。装错或漏配,你只会看到提示卡顿、跳转失效、__construct 不提示、foreach 变量类型推断全丢。
VS Code 市场里叫 PHP IntelliSense 的是已停更的老插件(作者弃坑多年),现在真正维护、支持 PHP 8.3+、LSP 协议、类型推断强的,只有 PHP Intelephense(作者:Ben Mewburn)。搜错名字,装了也白装。
Ctrl+Shift+X)PHP Intelephense → 认准发布者是 Ben Mewburn → 点击 Install
PHP Language Features**:Ctrl+Shift+P → 输入 @builtin php → 找到 PHP Language Features → 点击右下角齿轮图标 → Disable (Workspace)
Intelephense 需要知道你的项目用的是 PHP 7.4、8.1 还是 8.3,否则连 match 表达式都识别不了;它还要能调用 php.exe 做静态分析,路径不对,直接哑火。
php -v,有输出才算真装好(不是靠 XAMPP/WAMP 图形界面“启动成功”就以为 OK)Ctrl+, → 搜索 intelephense.environment.phpVersion → 设为和你项目一致的版本,例如 "8.2"
intelephense.executablePath → 填入绝对路径,如:C:\php\php.exe(Windows)或 /usr/local/bin/php(macOS)C:\xampp\php\php.exe(别填 C:\xampp\php 少了 \php.exe)全局设置管不住单个项目——比如你有个 Laravel 项目用了 .phpstorm.meta.php 或自定义 Facade,就得靠工作区配置告诉 Intelephense:“这些文件也要当 PHP 解析”。
.vscode/settings.json(若无)
{
"intelephense.environment.phpVersion": "8.2",
"intelephense.executablePath": "C:\\php\\php.exe",
"files.associations": {
"*.php": "php",
"*.module": "php",
"*.inc": "php"
}
}
"*.module" 和 "*.inc" 是 Drupal/WordPress 常见扩展名,不加它们,函数跳转会断\\),Windows 下单斜杠或不转义会报错装了 PHP Debug 插件后,如果发现 hover 查文档变慢、Ctrl+Click 跳转卡住,大概率是两个插件都在监听同一份 PHP 文件,争抢语言服务器连接。
立即学习“PHP免费学习笔记(深入)”;
PHP Debug 的 launch.json 里没启用 "pathMappings" 映射到错误目录(尤其 Docker 场景)settings.json 加一行:"intelephense.trace.server": "messages" → 打开 Output 面板选 Intelephense,看有没有 connection refused 类报错Intelephense → 测试提示是否恢复 → 再逐个开回其他插件定位冲突源Intelephense 的智能程度,一半看它自己,一半看你给它的路径对不对、版本设没设、文件关没关联上。最容易被跳过的,就是禁用默认 PHP 支持、双写 Windows 路径、以及改完 settings.json 后忘记重启整个 VS Code 窗口——这三步漏掉任意一个,你看到的就只是“好像装了,但没啥用”。