脚本宝典收集整理的这篇文章主要介绍了PHP代码修正之CodeSniffer,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
Last-Modified: 2019年5月10日13:59:27
参考链接
使用 PHP-CS-Fixer 的可以看这篇文章: https://learnku.com/laravel/t...
介绍
PHP_CodeSniffer 是一个代码风格检测工具。它包含两类脚本,phpcs
和 phpcbf
(GitHub地址)
phpcs
phpcs
脚本对 PHP
、JavaScript
、CSS
文件定义了一系列的代码规范(通常使用官方的代码规范标准,比如 PHP
的 PSR2
),能够检测出不符合代码规范的代码并发出警告或报错(可设置报错等级)。
phpcbf
phpcbf
脚本能自动修正代码格式上不符合规范的部分。比如 PSR2
规范中对每一个 PHP
文件的结尾都需要有一行空行,那么运行这个脚本后就能自动在结尾处加上一行空行。
php-cs-fixer该工具不包含在 PHP_CodeSniffer 中, 是在另一个独立的项目 https://github.com/FriendsOfP...
php-cs-fixer
修复不规范代码 作用等同于 phpcbf
只不过规则好像稍有区别
安装
composer global require "squizlabs/php_codesniffer=*"
安装后会在全局的 Vendor
目录下的 bin
中生成两个软链接:
phpcbf -> ../squizlabs/php_codesniffer/bin/phpcbf
phpcs -> ../squizlabs/php_codesniffer/bin/phpcs
查看全局 Vendor
目录位置:
composer global config bin-dir --absolute
使用
命令行模式
- 将
phpcs
和 phpcbf
的目录加入环境变量
-
设置默认代码标准
为了避免每次手动指定标准, 直接设置默认的代码标准为 PSR-2
phpcs --config-set default_standard PSR2
phpcbf --config-set default_standard PSR2
-
检测代码文件
phpcs test.php
此时命令行会提示发现的问题列表, 带 [x]
的表示可以被 phpcbf
修正
若需要每次执行时指定代码格式标准, 则加上 –standard=<standard>
phpcs --standard=PSR2 test.php
-
修正代码
phpcbf test.php
此时会修正问题列表中带 [x]
的问题
PHPStorm
让编辑器使用PSR-2标准
1、打开PhpStorm
的设置页(File->Setting
),到Editor->Code Style->PHP
页PHP
中选择风格为 PSR1/2
2、到Code Sniffer
页,路径是Setting->Languages and Frameworks->PHP->Quality Tools->Code Sniffer
,设置phpcs
的路径
Composer全局的vendor目录binphpcs.bat
3、到Inspections
页,路径Setting->Editor->Inspections
,右侧的 PHP,勾选下面的两个 PHP,选择使用 PSR2
现在使用PhpStorm
的格式化,将会自动格式化成psr-2的风格
经过上面的操作,PhpStorm
代码格式化的规则基本与phpcs
的规则基本一致了,但也有一小部分不一致,所以后面还要用到phpcs
和phpcbf
如果每次都在终端去执行花费时间可不少,为了提高工作效率,可以在PhpStorm
集成phpcbf、phpcs
检测规范的功能
设置路径:Tools -> External Tools
集成phpcbf
-
Program
是你的PHP根目录下的文件,windows是.bat
文件
-
Arguments
是--standard=PSR2 $FileDir$/$FileName$
,记得指定代码标准
-
Working directory
是$ProjectFileDir$
,也可以直接填
下面的Open console for tool output
是指打印检测的信息到控制台上,phpcs
检测的我们要看,phpcbf
就不用了,所以不用勾选
怎么使用呢?
工具栏的Tools->External Tools
就可以看到我们刚才添加的两个小工具,直接点击就可以用了
点击操作很麻烦, 那就加一个快捷键吧:
在 Settings -> Keymap -> External Tools -> phpcbf
中进行添加快捷键操作
以上是脚本宝典为你收集整理的PHP代码修正之CodeSniffer全部内容,希望文章能够帮你解决PHP代码修正之CodeSniffer所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。