Intelephense需配合LSP插件和正确PHP路径配置才能实现PHP智能提示;须确保系统PATH包含php、安装LSP与Intelephense、设置intelephense.phpExecutablePath,并在项目中配置vendor自动索引及@var注解。

Sublime Text 本身不内置 PHP 智能提示,必须靠插件实现;Intelephense 是目前最稳定、响应快、支持 PHP 8+ 类型推导的第三方语言服务器,但直接装插件 ≠ 自动生效——关键在 php.executablePath 和工作区配置。
确认已安装 PHP CLI 并可被 Sublime 调用
Intelephense 不自带 PHP 解析器,它需要调用系统已安装的 php 命令来分析代码。如果终端能运行 php -v,但 Sublime 提示 "PHP executable not found",说明 Sublime 没读到你的环境变量。
-
macOS / Linux:检查
~/.zshrc或~/.bash_profile中是否把php所在目录(如/opt/homebrew/bin)加入了$PATH - Windows:确保
php.exe目录(如C:\php)已添加进系统环境变量Path - 验证方式:在 Sublime 控制台(
Ctrl+`)中执行import os; os.environ.get('PATH'),看输出里有没有你的 PHP 路径
安装 Intelephense 插件并启用 LSP 支持
Sublime 的智能提示依赖 LSP(Language Server Protocol)插件作为桥梁,Intelephense 本身只是服务端。两者缺一不可。
- 先通过 Package Control 安装
LSP(不是LSP-intelephense,那是旧版) - 再安装
Intelephense(作者是bmewburn,别选错) - 安装完重启 Sublime,然后打开一个
.php文件,状态栏右下角应显示LSP-Intelephense - 若没出现,手动触发:菜单
Project → Edit Project,在settings下加:{ "settings": { "lsp_servers": { "intelephense": { "enabled": true, "command": ["intelephense", "--stdio"], "selector": "source.php" } } } }
配置 php.executablePath 防止“undefined symbol”或解析卡死
即使 php 在终端可用,Intelephense 仍可能因找不到可执行文件或版本不兼容报错,典型错误:"Failed to start language server: spawn php ENOENT" 或加载时 CPU 占满。
立即学习“PHP免费学习笔记(深入)”;
- 打开
Preferences → Package Settings → Intelephense → Settings - 在用户设置中写入(路径按你本地实际改):
{ "intelephense.phpExecutablePath": "/usr/bin/php", "intelephense.environment.includePaths": ["/path/to/your/vendor/autoload.php"] } - macOS M1/M2 用户注意:
/usr/bin/php是系统默认(已弃用),建议用 Homebrew 安装的 PHP,并填完整路径如/opt/homebrew/bin/php - Windows 用户路径要用双反斜杠或正斜杠:
"C:/php/php.exe"或"C:/php/php.exe"
项目级 vendor 自动索引与 @var 注解补全
Intelephense 默认只扫描当前打开文件夹,Composer 依赖不会自动识别,导致 new GuzzleHttp\Client() 这类类名不提示。
- 确保项目根目录有
composer.json,且已运行过composer install - 在项目
sublime-project文件中加入:{ "folders": [ { "path": "." } ], "settings": { "intelephense.environment.includePaths": ["./vendor/autoload.php"] } } - 对动态变量类型,手动加
@var注释才能触发精准提示: 此时输入->就会列出format()、modify()等方法
真正卡住人的往往不是插件装不上,而是 php.executablePath 指向了不存在的路径,或者 LSP 和 Intelephense 版本不匹配(比如用了 Sublime Text 4 但装了只支持 ST3 的旧版插件)。建议装完后打开控制台(Ctrl+`),留意有没有 LSP 启动失败的日志——那才是问题真正的起点。











