PHP 代码规范报告以及自动修复工具

两款代码规范报告和修复工具 PHP Coding Standards Fixer、PHP_CodeSniffer 的简单安装和使用说明。

PHP Coding Standards Fixer

PHP 版本需要大于等于 5.6.0

对 Atom、NetBeans、PhpStorm、Sublime Text、Vim 等编辑器有插件

PHP Coding Standards Fixer 官网

安装

wget http://cs.sensiolabs.org/download/php-cs-fixer-v2.phar -O php-cs-fixer
chmod a+x php-cs-fixer
mv php-cs-fixer /usr/local/bin/php-cs-fixer

composer 方式可查看官网

升级

php php-cs-fixer self-update

composer 方式可查看官网

使用

直接修复指定文件

php php-cs-fixer fix /tmp/ArticlesController.php

修复目录下的所有文件

php php-cs-fixer fix /tmp

指定修复规范规则。默认 PSR1、PSR2

# 指定 PSR2 规则
php php-cs-fixer fix /tmp/ArticlesController.php --rules=@PSR2
# 指定多个规则
php php-cs-fixer fix /tmp/ArticlesController.php --rules=@Symfony,@PSR1,@PSR2

缓存。默认使用缓存

# 不使用缓存
php php-cs-fixer fix /tmp/ArticlesController.php --using-cache no

不实际修复文件,只查看要修复的报告差异

php php-cs-fixer fix /tmp/ArticlesController.php --dry-run --diff

PHP_CodeSniffer

PHP 版本需要大于等于 5.4.0

命令的使用可以通过 -h 参数进行查看帮助。

PHP_CodeSniffer 除了下面我所罗列的安装、查看报告、设置编码标准、文件修复等,还可以设置设置报告的级别、编码,并且通过设置可以检查 JavaScript、CSS 问题。详情可查看 PHP_CodeSniffer WIKI

安装

curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar
php phpcs.phar -h

curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar
php phpcbf.phar -h

composer 方式可以查看 PHP_CodeSniffer 安装官方文档

查看报告

# 指定单个文件
phpcs /tmp/ArticlesController.php
# 指定目录
phpcs /path/to/code 

打印差异报告

打印差异报告

phpcs --report=diff /tmp/Controllers/ArticlesController.php

输出差异报告到指定文件

phpcs --report-diff=/tmp/changes.diff /tmp/ArticlesController.php

查看已经安装的编码标准

phpcs -i

指定编码标准

phpcs --standard=PEAR /tmp/ArticlesController.php
phpcs --standard=PEAR,Squiz /tmp/ArticlesController.php

使用 PSR2 编码标准对文件进行修复

phpcbf -w --standard=PSR2 /tmp/ArticlesController.php
知识共享许可协议
本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。
随喜
支付宝随喜
微信随喜

😄

不错不错

后三排

😄

引用

😁

后三排

不错不错

引用

😄

Viagra No Perscription Propecia 08 Hidradenitis Suppurativa Amoxicillin <a href=http://bakgol.com>vente viagra</a> No Precreption Avodart 0.5 Mg Obtenez Dapoxetine Online No Prescription

<a href="http://requip.network/">generic requip</a>

<a href="http://stromectol2020.com/">cheap stromectol</a>

<a href="http://phenergan.institute/">phenergan without a prescription</a> <a href="http://colchicine.run/">buy colchicine</a> <a href="http://cipro.ltda/">cipro</a>; <a href="http://buymotilium.team/">buy motilium online</a> <a href="http://buymobic.network/">mobic</a>; <a href="http://lasix.ltda/">lasix</a>; <a href="http://azithromycin.recipes/">where can i get azithromycin</a> <a href="http://elimite.institute/">elimite</a>;

<a href="http://buynexium.network/">where to buy nexium online</a>

<a href="http://advair.wtf/">advair</a>; <a href="http://stromectol.srl/">where to buy stromectol</a>

<a href="http://buymobic.network/">buy mobic</a>

<a href="http://bupropion.recipes/">generic bupropion xl</a>

<a href="http://abilify.institute/">abilify medicine</a>

<a href="http://viagranoed.com/">viagra buy online no prescription</a> <a href="http://lexaprofastdelivery.com/">lexapro canada</a> <a href="http://atenolol.irish/">atenolol drug</a>

<a href="http://prozac.capetown/">cheap prozac for sale</a> <a href="http://diflucan2020.com/">diflucan</a>; <a href="http://propranolol.recipes/">propranolol prescription</a> <a href="http://neurontin.international/">cost of neurontin</a> <a href="http://buydiflucan.team/">buy diflucan</a> <a href="http://lexapro.durban/">cost of cipralex daily</a> <a href="http://avodart.network/">look at this</a> <a href="http://clomid.ltda/">clomid</a>; <a href="http://abilify2020.com/">abilify medication</a> <a href="http://clonidine.golf/">clonidine 0.2mg tab</a>

<a href="http://valtrex1038.com/">buy valtrex without prescription</a>

<a href="http://estrace.team/">estrace cream price comparisons</a>

<a href="http://celexa.network/">generic celexa</a>

<a href="http://buyretina.network/">buy retin-a</a>

<a href="http://torsemide.run/">torsemide tablets</a>

<a href="http://vermox.golf/">where to buy vermox</a>

<a href="http://cafergot.srl/">cafergot medication</a>

http://buyfurosemide.network/buy/furosemide.html - furosemide 40 mg tablets online

<a href="http://vardenafil.capetown/">buy vardenafil</a>

<a href="http://buyvaltrex.network/">how can i get valtrex</a>

<a href="http://cialisnoed.com/">cialis in india</a>

<a href="http://amitriptyline.irish/">amitriptyline hcl 25 mg tab</a> <a href="http://albendazole.durban/">albenza generic</a> <a href="http://augmentin.network/">buy augmentin online</a>

<a href="http://tretinoin.joburg/">buy tretinoin cream online</a>

<a href="http://abilify2020.com/">abilify medication</a>

<a href="http://buyhydrochlorothiazide.network/">get more information</a> <a href="http://avodart.network/">avodart</a>; <a href="http://tadalafil2020.com/">buy tadalafil online</a>

<a href="http://indocin.recipes/">indocin 50 mg tablets</a>

<a href="http://buyvaltrex.network/">buy valtrex online without a prescription</a> <a href="http://clonidine.golf/">purchase clonidine online</a> <a href="http://lipitor.network/">lipitor</a>; <a href="http://clomid.ltda/">clomid</a>; <a href="http://furosemide.joburg/">furosemide buy</a>

<a href="http://buycipro.network/">cipro tendon</a>

<a href="http://buytrazodoneonlinenorx.us.com/">buy trazodone online</a>

<a href="http://buylisinopril.network/">lisinopril no prescription</a> <a href="http://cipro2020.com/">cipro</a>; <a href="http://buyatenolol.network/">buy atenolol online</a> <a href="http://viagra1019.com/">viagra</a>; <a href="http://neurontin.golf/">buy neurontin online</a> <a href="http://bactrim.wtf/">buy septra antibiotic</a> <a href="http://betnovate.network/">betnovate</a>;

<a href="http://prednisolonefastsecure.com/">where can i buy prednisolone in the uk</a> <a href="http://flagyl.golf/">flagyl</a>;