phpStrom安装PHP_CodeSniffer检查代码规范
为什么使用PHP_CodeSniffer
一个开发团队统一的编码风格,有助于他人对代码的理解和维护,对于大项目来说尤其重要。
PHP_CodeSniffer是PEAR中的一个用PHP5写的用来检查嗅探PHP代码是否有违反一组预先设置好的编码标准的一个包,它是确保你的代码简洁一致的必不可少的开发工具,甚至还可以帮助程序员减少一些语义错误。
什么是Pear
由于PHP_CodeSniffer的安装依赖PHP和Pear环境,那么我们有必要了解下什么是Pear。
安装Pear
在已经安装了PHP环境的前提下,进入php目录,如果没有go-pear.php文件,就到http://pear.php.net/go-pear.phar下载go-pear.php文件,该地址在浏览器打开可以看到一段PHP的代码,直接保存文件另存为go-pear.php到php根目录下面。
使用管理员方式打开命令行,输入以下命令:
1 cd c:\php
2 php go-pear.phar
这是出现:
1 Are you installing a system-wide PEAR or a local copy?
2 (system|local) [system] :
直接回车默认system继续,出现如下:

1 Below is a suggested file layout for your new PEAR installation. To
2 change individual locations, type the number in front of the
3 directory. Type 'all' to change all of them or simply press Enter to
4 accept these locations.
5
6 1. Installation base ($prefix) : C:\php
7 2. Temporary directory for processing : C:\php\tmp
8 3. Temporary directory for downloads : C:\php\tmp
9 4. Binaries directory : C:\php
10 5. PHP code directory ($php_dir) : C:\php\pear
11 6. Documentation directory : C:\php\docs
12 7. Data directory : C:\php\data
13 8. User-modifiable configuration files directory : C:\php\cfg
14 9. Public Web Files directory : C:\php\www
15 10. System manual pages directory : C:\php\man
16 11. Tests directory : C:\php\tests
17 12. Name of configuration file : C:\WINDOWS\pear.ini
18 13. Path to CLI php.exe : C:\php
19
20 1-13, 'all' or Enter to continue:

直接回车,出现如下,表示安装成功,
/*省略*/
The 'pear' command is now at your service at c:\php\pear.bat
/*省略*/

在php根目录下面会看到如下几个文件:

双击pear.bat文件,注册pear到当前环境。
安装PHP_CodeSniffer
在安装完pear之后,就可以安装php_CodeSniffer了,继续在cmd中输入:
1 pear install PHP_CodeSniffer
等待安装完成,安装完成后php根目录下回出现以下两个文件:

按照下图依次打开文件夹,在看如下目录结构:

在php->pear->PHP->CodeSniffer->Standards中可以看到一些php的规范,Generic是通用规范。
现在我们就可以使用这些规范来检测我们的php代码了,先说说在命令行中如何使用。
我们可以使用phpcs -h来看看使用帮助:
phpcs -h
看到的如下:

这里我只简单的说明如何检查单个文件或整个文件目录:
1 phpcs -n F:\Hg\web\application\controllers\ //检测文件目录
2 phpcs -n F:\Hg\web\application\controllers\home_controller.php //检测单个文件
看到如下结果(单个文件):

这样,我们就可以根据这些错误信息去修改我们的代码,使其符合规范。
我们可以指定使用某一个规范进行检测,方法如下:
1 phpcs -n --standard=Zend F:\Hg\web\application\controllers\
不指定标准,会使用php通用规范Generic。
安装CodeIgniter标准
去https://github.com/thomas-ernest/CodeIgniter-for-PHP_CodeSniffer下载包解压,复制src目录到php->pear->PHP->CodeSniffer->Standards目录下,并且改名为CodeIgniter

上图为解压后图

上图为放到php代码规范下后的图。
现在就可以使用CodeIgniter标准检测代码了:
1 phpcs -n --standard=CodeIgniter F:\Hg\web\application\controllers\
PHPSTORM配置PHP_CodeSniffer检测环境
打开phpstorm的配置框,找到Languages & Frameworks -> php-> Code Sniffer,不同版本的phpstorm可能会有出入,直接搜索Code Sniffer也可以。

点击如下进行编辑:

设置PHP Code Sniffer path为phpcs.bat的路径。

点击Validate,出现如下图表示设置成功:

打开配置搜索Inspections, 展开PHP,勾选PHP Code Sniffer validation, 选择Coding standard为CodeIgniter, 点击OK确定。

接下来,在编码PHP的时候就会出现规范提示

如上图,鼠标移动到有波浪提示的地方,就会出现phpcs的规范提示了。
配置到此结束,希望可以帮到需要的程序猿!
最规范的代码就是不出现任何的波浪提示。
phpStrom安装PHP_CodeSniffer检查代码规范的更多相关文章
- win10下安装PHP_CodeSniffer 检查编码规范
PHP CodeSniffer是PEAR中的一个用PHP5写的一个PHP的代码风格检测器,它根据预先设定好的PHP编码风格和规则,去检查应用中的代码风格情况是否有违反一组预先设置好的编码标准,内置了Z ...
- 2016 正确 sublime安装PHPcs PHPcodesniffer代码规范提示插件,修正网上部分不详细描述
对你有助请点赞,请顶,不好请踩------送人玫瑰,手留余香!-------------------14:37 2016/3/212016 正确 sublime安装PHPcs PHPcodesniff ...
- 【Android Studio安装部署系列】四十一、Android Studio安装Alibaba Java Coding Guidelines插件(检查代码规范)
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 该插件主要是对今年发布的<阿里巴巴 Java 开发规约>的一个延伸,它以一个 IDE 的插件存在,可以自动对手册中的 J ...
- 使用 PHP_CodeSniffer 检查 代码 是否 符合 编码规范
服务端部署:PHP_CodeSniffer HG 服务端部署篇 1.下载PHP_CodeSniffer 前往 https://github.com/squizlabs/PHP_CodeSniffer ...
- idea中安装阿里巴巴的代码规范插件
1.打开iead软件,从左上角点击File -> Settings -> Plugins 2.安装完成后,重启idea软件,即可正常使用了.
- 检查BUG插件 代码规范(Findbugs)插件 安装以及使用(idea)
使用findbugs进行检查代码规范 Findbugs很多人都并不陌生,Eclipse中有插件可以帮助查找代码中隐藏的bug,IDEA中也有这款插件.这个插件可以帮助我们查找隐藏的bug,比较重要的功 ...
- laravel代码规范强制检查
目录 介绍 代码规范检查与修复 在git commit时自动检查代码规范 后记 介绍 在团队协作开发中,代码规范是必要的.以前的规范都是自己定,然后手动检查,很难做到有效的约束. 现代的PHP,则有得 ...
- eclipse手动安装alibaba代码规范插件
如果你的开发环境无法访问外网,那么手动安装阿里巴巴的代码规范插件是一个不错的选择.另外,很多教程说该插件需要jdk1.8以上,我试了一下jdk1.7也是可以运行的,更低的版本就不知道了,貌似jdk1. ...
- eclipse手动安装alibaba代码规范插件+取消阿里编码规约插件扫描出来的警告及错误
如果你的开发环境无法访问外网,那么手动安装阿里巴巴的代码规范插件是一个不错的选择.另外,很多教程说该插件需要jdk1.8以上,我试了一下jdk1.7也是可以运行的,更低的版本就不知道了,貌似jdk1. ...
随机推荐
- 课程报名 | 5G时代的视频云服务关键技术与实践
6月3日,工业和信息化部宣布将于近期发放5G商用牌照.这也意味着,中国正式进入了5G时代. 5G身上有很多新标签:"大规模天线"."新的编码技术"." ...
- PAT Basic 1007 素数对猜想 (20) [数学问题-素数]
题目 让我们定义 dn 为:dn = pn+1 – pn,其中 pi 是第i个素数.显然有 d1=1 且对于n>1有 dn 是偶数."素数对猜想"认为"存在⽆穷多对 ...
- C到C++转变简述
从 C 到 C++ 语言的转变 1.平时使用还以 printf, scanf 为主 printf 和 scanf 与 cin cout 相比效率更快 2.头文件改成如下,C++对C语言兼容 #incl ...
- 配对t检验
- 编程基础-servlet1
1.Servelet是什么 sevlet是Server与Applet 的缩写,即服务端小程序.Sun公司提供的开发动态web资源的技术. servelet本质是java类,但遵循Servlet规范,没 ...
- JavaSE--【转】网络安全之证书、密钥、密钥库等名词解释
转载 http://www.cnblogs.com/alanfang/p/5600449.html 那些证书相关的名词解释(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等 ...
- 测试Java程序执行耗费的时间
package test; public class Main { public static void main(String[] args) { long start = System.curre ...
- 微信小程序生成海报保存图片到相册小测试
test.wxml <canvas style="width:{{imageWidth}}px;height:{{imageHeight}}px;" canvas-id=&q ...
- jest 测试入门(一)
说实话,作为前端来说,单元测试,并不是一种必须的技能,但是确实一种可以让你加法的技能 之前我一个库添加了单元测试,加完之后感悟颇深,所以写下这篇文章来记录 环境搭建 一般来说,普通的库,如果没有添加 ...
- Android之布局LinearLayout
1.weight属性用法 主要用于view对象屏幕适配比例 如下图,左边是等比例,右边是1:2比例 实现代码: <LinearLayout xmlns:android="http:// ...