本文主要指导如何在 phpstorm 中集成 phpCodeSniffer(简称:phpCS)
- 安装 phpCS
- 如何在 phpStorm 中加载 phpCS
- 如何加载自定义的 phpCS 的 xml 规则文件
- 如何在 php 文件中实时提示
- 如何根据规则实时修正
phpStorm 官方指导文档:https://www.jetbrains.com/help/phpstorm/using-php-code-sniffer.html
安装 phpCS
安装 phpCS 有多种途径,可以参考 https://github.com/squizlabs/PHP_CodeSniffer#installation
我们使用 composer 方式安装,为了便于在所有项目中使用 phpCS,我们使用全局方式安装。
1 | composer global require "squizlabs/php_codesniffer=*" -vvv |
安装完成后,会多出两个指令 phpcs
和 phpcbf
在 phpStorm 中加载 phpCS
按照截图的路径 File > Settings > Language & Framework > PHP > Quality Tools > Code Sniffer
,选择 Local 后选择刚才的安装路径。
如果不清楚刚才安装的全局路径,Linux 下可使用
whereis phpcs
查看路径。其他系统可自行搜索 “composer 全局 bin 目录” 获取更多帮助。
或者,你也可以用
composer global config bin-dir --absolute
来查看 composer 的 bin 目录`
加载自定义 xml 规则文件
首先,需要开启 phpCodeSniffer 的验证提示,如截图所示。其次,在截图右下角,选择 custom 来加载自定义的 xml 文件。
加载完毕后,即可正常对打开的 PHP 文件进行实时检测。
实时验证 PHP 文件
进行上述配置后,对打开的 PHP 文件会进行实时检测。
如图所示,对于不符合规范的代码,会进行波浪线显示,鼠标悬浮后可以看到详细说明。
自动修正
光标放置在波浪线处,按下组合键 alt
+ enter
,选择 PHP Code Beautifier and Fixer
即可修正。
修正后
总结
结合 phpCS,我们可以在开发时实时检测团队代码规范,便于在提交前进行规范统一。
集成在 IDE 中的 phpCS 可以对打开的文件进行实时检测,如果需要对整个项目或者是指定的文件夹进行检测,可以直接使用 phpcs
命令进行检测,使用 phpcbf
进行修正。