对于经常和 PHP 代码打交道的开发者来说,代码风格的统一不仅仅是看着舒服,更是团队协作和长期维护的基石。PhpStorm 作为当下最流行的 PHP IDE 之一,在代码格式化方面提供了相当灵活的配置能力。这篇东西会把 Ubuntu 系统下的完整配置路径拆开揉碎了讲清楚,从最基础的缩进空格到大括号风格,再到进阶的自动格式化甚至外部工具集成,一步不落。

1. 打开 PhpStorm 设置入口
启动 PhpStorm 之后,配置的入口其实就那几个:顶部菜单栏找到 File → Settings(如果你用的是 macOS,那就是 PhpStorm → Preferences)。当然,最省事的还是直接按快捷键 Ctrl+Alt+S,设置面板瞬间弹出来,不用在一堆菜单里翻找。
2. 导航至代码风格设置
进入设置窗口后,左侧边栏的树形结构里找到 Editor 分类,展开它,点一下 Code Style。这时右侧面板默认会显示你当前语言的配置,但咱们要针对 PHP 做调整,所以再点一下上方的 PHP 标签——这里就是 PHP 代码风格的专属控制台了。
3. 自定义基础代码风格规则
到了 PHP 标签页,下面这几个核心参数是最常碰到的,也是团队成员之间最容易打架的地方:
- 缩进设置:先确保“Use tab character”前面的勾是去掉的,然后勾选“Use spaces”,再把“Tab size”和“Indent”都设为 4。4 个空格是 PSR 标准的标配,也是多数 PHP 项目的共识。
- 空格规则:展开“Spaces”分类,建议把“Around operators”(运算符周围)和“Within parentheses”(括号内)都勾上。这么一来,
$a = $b + $c两边的空格就有了,代码看起来清爽很多。 - 换行规则:在“Blank Lines”分类里,把“Keep maximum blank lines”设为 1 或 2。太少了显得拥挤,太多了又松散,1~2 行是比较舒服的节奏。
- 大括号风格:展开“Braces Placement”,把“Class declaration”和“Method declaration”等选项都设为“End of line”(行尾)。这就是大家常说的 K&R 风格,也是 PSR 规范推荐的做法。
4. 应用预定义代码规范(如 PSR-2)
如果不想手动逐项去配,还可以走捷径:在 Code Style → PHP 页面的右上角,有一个叫 Scheme 的下拉菜单。点开它,直接选“PSR-2”或者“PSR-12”(后者是更新的版本,约束更严格)。PhpStorm 会自动加载对应的预设配置,点 Apply 再点 OK,一套社区公认的规范就搞定了。
5. 手动格式化代码
配置好之后,怎么用?最简单的就是手动触发格式化。在编辑器中打开一个 PHP 文件,按快捷键 Ctrl+Alt+L(Windows/Linux),整个文件会被重新排版。如果你只想格式化某一段代码,先选中那一段,再按同样的快捷键就行。
6. 设置保存时自动格式化
手动格式化容易忘,更省心的办法是让 PhpStorm 在每次保存文件时自动执行格式化。去 Settings → Editor → General → Code Completion(注意不是 Code Style),找到“Code Format on Sa ve”并勾上。再点 Apply → OK,以后每次 Ctrl+S,代码风格都会自动对齐。
7. 高级:使用 File Watcher 自动执行代码格式化(可选)
对于追求极致自动化的开发者,还可以接入外部工具,比如 php-cs-fixer。先用 Composer 全局安装它:composer global require friendsofphp/php-cs-fixer。装完之后在终端里执行 which php-cs-fixer,记下返回的路径(类似 /home/用户名/.config/composer/vendor/bin/php-cs-fixer)。然后进入 PhpStorm 的 Settings → Tools → File Watchers,点“+”号选择“Custom”。在“Program”字段里粘贴刚才的路径,“Arguments”填 fix $FilePath$,“Output paths”填 $FilePath$。保存之后,每次保存 PHP 文件,PhpStorm 都会自动调用 php-cs-fixer 来格式化——这算是终极懒人方案了。
8. 导出/导入代码风格模板(团队协作)
如果你的团队希望所有人使用同一套风格,可以把配置导出成模板。在 Code Style → PHP 页面,点一下 Scheme 下拉菜单旁边的齿轮图标,选“Export”,保存为 .icls 文件。其他同事在自己的 PhpStorm 里,同样点齿轮图标、选“Import”,加载这个文件,几秒钟就能同步所有规则。从此告别代码格式上的扯皮。