百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>网页制作> 怎样运用PHP_CodeSniffer检查代码标准(详解)
分享文章到:

怎样运用PHP_CodeSniffer检查代码标准(详解)

发布时间:09/01 来源:未知 浏览: 关键词:

有些同学大概还没听过这东西,大约介绍一下:

PHP_CodeSniffer 是一个代码风格检测工具。它包括两类足本,phpcsphpcbf(GitHub地址)。

phpcs 足本对 PHPJavaScriptCSS 文件定义了一系列的代码标准(平常使用官方的代码标准标准,比方 PHPPSR2),能够检测出不相符代码标准的代码并发出警告或报错(可设定报错等级)。

phpcbf 足本能主动批改代码格局上不相符标准的部分。比方 PSR2 标准中对每一个 PHP 文件的结尾都需要有一行空行,那么运转这个足本后就能主动在结尾处加上一行空行。

安置

引荐使用 composer 来安置:

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

命令行使用

到这一步,其实你就可以兴奋的使用这两个命令了:

哦,不外假如要全局使用这两个命令那还是做个软链接放在 /usr/local/bin 下吧~

$ phpcs test.php

FILE: /Users/stephen/Develop/Code/test.php
--------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
--------------------------------------------------------------------------------------------
 2 | ERROR | [ ] Missing file doc comment
 3 | ERROR | [x] TRUE, FALSE and NULL must be lowercase; expected "false" but found "FALSE"
--------------------------------------------------------------------------------------------
PHPCBF CAN FIX THE 1 MARKED SNIFF VIOLATIONS AUTOMATICALLY
--------------------------------------------------------------------------------------------

Time: 45ms; Memory: 4Mb

$ phpcbf test.php

PHPCBF RESULT SUMMARY
----------------------------------------------------------------------
FILE                                                  FIXED  REMAINING
----------------------------------------------------------------------
/Users/stephen/Develop/Code/test.php                  1      1
----------------------------------------------------------------------
A TOTAL OF 1 ERROR WERE FIXED IN 1 FILE
----------------------------------------------------------------------

Time: 49ms; Memory: 4Mb

Sublime Text 中集成

安置插件

前提 Package Control 要安置好,这个你必定没问题的(莫名的自信,逃)

安置 phpcs 这个插件,然后翻开这个插件的 Settings - UserSettings - Default,将后者的内容全部复制到前者。

配置插件

将以下这几个配置项配置一下:

当前环境中 php 的施行途径

"phpcs_php_prefix_path": "/usr/bin/php",

当前环境中 phpcs 的施行途径

"phpcs_executable_path": "~/.composer/vendor/bin/phpcs",

施行足本时额外增加的参数,一样以 PSR2 代码标准作为标准,你也可以选中 PSR1PEAR

"phpcs_additional_args": {
    "--standard": "PSR2",
    "-n": ""
},

当前环境中 phpcbf 的施行途径

"phpcbf_executable_path": "/Users/stephen/.composer/vendor/bin/phpcbf",

开启留存就施行 cbf 足本功效

"phpcbf_on_save": true,

此刻就可以兴奋的玩耍了,编纂完 .php 后缀的文件留存后就会主动回复批改代码不标准的地方。

这个插件还有其他代码标准可以设定的地方,比方 PHP Mess Detector settingsPHP Linter settingsPHP Scheck settings

下次在研讨其他几个,当前是够我用了,逃)

PhpStrom 中集成

配置 Code Sniffer

在 Settings -> Languages & Frameworks -> PHP -> Code Sniffer 中对 phpcs 停止配置

点击 Configuration: Local 旁边的 ...,将当前环境的 phpcs 施行足本所在途径配置进去,旁边有一个 Validate 按钮可以停止验证,其他两个参数默许就好,这里也轻微说一下吧。

Maxumum number of messages per file[1...100]:每个文件最多显示不相符代码标准的条数,一样显现50个了那你有许多工作可以做了,其实10个就够了,特别对我这种代码洁癖和强迫症晚期的人来说一个足矣 。。。

Tool process timeout, sec[1...30]:足本施行的超不时间

开启验证

在 Settings -> Editor -> Inspections 中停止开启

寻到 PHP -> PHP Code Sniffer validation 选项,对其打钩,在右侧停止具体配置

我是将 Options -> Show warnings as: Error 开启了,当然你也可以选中 Warnning,提醒级别高一点能够强迫本人,没啥不好的吧~

Coding standard 照旧是选中 PSR2,假如寻不到这个选项,记得点一下紧受着的刷新按钮。

主动修复

我寻了半天没发明 PhpStrom 有支撑 phpcbf 的可用选项,所以只能通过 External Tools 来实现了。

在 Settings -> Tools -> External Tools 中停止增加,下面是我的一个示例,根本可以照搬 :)

ParameterValue
Namephpcbf
DescriptionAutomatically correct coding standard violations.
Programphpcbf
Parameters--standard=PSR2 "$FileDir$/$FileName$"

此刻就可以在菜单栏上的 Tools -> External Tools 中寻到它并兴奋的使用了。

亮哥,这样很不利便诶。。。

那就加一个快速键把。。。

在 Settings -> Keymap -> External Tools -> phpcbf 中停止增加快速键操纵,我设定的是 Option + F,或者 Windows 上的 Alt + F

蜜汁延长

此前没用 phpcbf,代码主动修复使用的是 php-cs-fixer,但后来发明两者功效差不多,所以秉着能少一个包就少一个包的原则,舍弃了 php-cs-fixer

有乐趣的自行拓展理解~

引荐:《PHP视频教程》

以上就是怎样使用PHP_CodeSniffer检查代码标准(详解)的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有151人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板