通过配置自定义编译系统,Sublime Text 可运行选中的 PHP 或 JavaScript 代码:1. 创建 Build System,利用 php -r 或 node -e 执行标准输入的代码片段;2. 确保系统已安装 PHP 和 Node.js 并配置 PATH;3. 选中代码后按 Ctrl+B 即可在底部面板查看输出结果,适用于快速调试但不支持交互式输入或变量上下文保持。

在使用 Sublime Text 编辑代码时,很多人希望可以直接运行单段 PHP 或 JavaScript 代码,而不需要完整保存文件或切换到命令行。虽然 Sublime Text 本身不是运行环境,但通过配置自定义编译系统(Build System),你可以快速执行选中的代码片段或当前文件。
一、Sublime 如何运行单段 PHP 或 JS 代码
Sublime Text 默认不支持“运行选中代码”这种操作,但可以通过以下方式实现:
- 选中代码 → 使用 Build System 执行外部解释器:将选中的代码传递给 PHP 或 Node.js 解释器执行。
- 临时拼接成完整脚本:例如 JS 需包裹在 console.log() 中输出结果,PHP 可用 echo 输出。
-
依赖系统已安装 php / node 环境:确保终端能执行
php -v和node -v。
注意:Sublime 的 Build System 主要用于运行整个文件。若想运行“选中部分”,需要借助插件或自定义 shell 脚本处理 stdin。
二、配置 PHP 单段代码运行(支持选中)
创建一个能运行选中 PHP 代码的构建系统:
立即学习“PHP免费学习笔记(深入)”;
- 打开菜单:Tools → Build System → New Build System…
- 替换内容为以下 JSON:
{
"cmd": ["php", "-r", "\"eval('');\""],
"selector": "source.php",
"name": "Run PHP Selection",
"working_dir": "$file_path",
"encoding": "utf-8"
}保存为:PHP_Selection.sublime-build
使用方法:
- 选中一段 PHP 代码(如:
$a = 1+2; echo $a;) - 按 Ctrl+B(Windows/Linux)或 Cmd+B(Mac)
- 输出结果会显示在底部面板
原理说明:通过 php -r 执行字符串代码,并从标准输入读取选中内容。
三、配置 JavaScript 单段代码运行(Node.js)
利用 Node.js 执行选中的 JS 代码:
- 新建 Build System,内容如下:
{
"cmd": ["node", "-e", "eval(require('fs').readFileSync('/dev/stdin', 'utf-8'))"],
"selector": "source.js",
"name": "Run JS Selection",
"shell": true,
"working_dir": "$file_path",
"encoding": "utf-8"
}Windows 用户需改为:
{
"cmd": ["node", "-e", "eval(require('fs').readFileSync('\\\\.\\conin$', 'utf-8'))"],
"selector": "source.js",
"name": "Run JS Selection",
"shell": true,
"working_dir": "$file_path",
"encoding": "utf-8"
}保存为:JS_Selection.sublime-build
使用示例:
- 选中代码:
console.log(1+2); - 按 Ctrl+B
- 查看底部输出结果
四、注意事项与优化建议
这类方式有局限性,但足够日常调试使用:
- 确保已安装 PHP 和 Node.js,并加入系统 PATH
- 某些特殊字符可能引起语法错误,建议简单表达式使用
- 不能交互式输入(如 readline)
- 可配合 SublimeREPL 插件获得更完整体验(需额外安装 Package Control 插件)
- 构建系统只响应“选中内容”或“整个文件”,无变量上下文保持能力
基本上就这些。配置一次后,PHP 和 JS 的临时测试变得非常方便。虽然不如 REPL 灵活,但在轻量场景下足够高效。











