windows环境PhpStorm中简单使用PHP_CodeSniffer规范php代码

简介: 为什么使用PHP_CodeSniffer 一个开发团队统一的编码风格,有助于他人对代码的理解和维护,对于大项目来说尤其重要。 PHP_CodeSniffer是PEAR中的一个用PHP5写的用来检查嗅探PHP代码是否有违反一组预先设置好的编码标准的一个包,它是确保你的代码简洁一致的必不可少的开发工具,甚至还可以帮助程序员减少一些语义错误。

为什么使用PHP_CodeSniffer

一个开发团队统一的编码风格,有助于他人对代码的理解和维护,对于大项目来说尤其重要。

PHP_CodeSniffer是PEAR中的一个用PHP5写的用来检查嗅探PHP代码是否有违反一组预先设置好的编码标准的一个包,它是确保你的代码简洁一致的必不可少的开发工具,甚至还可以帮助程序员减少一些语义错误。

什么是Pear

由于PHP_CodeSniffer的安装依赖PHP和Pear环境,那么我们有必要了解下什么是Pear。

来自百度百科

PEAR是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写。它是一个PHP扩展及应用的一个代码仓库,简单地说,PEAR之于PHP就像是CPAN(Comprehensive Perl Archive Network)之于Perl。
PEAR的基本目标是发展成为PHP扩展和库代码的知识库,而这个项目最有雄心的目标则是试图定义一种标准,这种标准将帮助开发者编写可移植、可重用的代码。

安装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的规范提示了。

配置到此结束,希望可以帮到需要的程序猿!

 

最规范的代码就是不出现任何的波浪提示。

 

 

参考:

http://baike.baidu.com/subview/20453/16587839.htm

目录
相关文章
|
14天前
|
PHP 开发者
【专栏】介绍PHP的命名空间,它是一个用于封装代码、避免名称冲突的机制
【4月更文挑战第27天】本文介绍了PHP的命名空间,它是一个用于封装代码、避免名称冲突的机制。命名空间的作用包括:防止大型项目中的命名冲突,提升代码可读性和可维护性,以及方便代码重用。文章详细阐述了如何定义、导入命名空间,使用完全限定名称以及设置命名空间别名。通过实例展示了命名空间在项目模块划分和第三方库如Laravel中的应用,强调了命名空间在组织和管理PHP代码中的关键作用。
|
2天前
|
PHP 数据库 开发者
PHP中的异常处理:提升代码稳定性的关键
【5月更文挑战第27天】在软件开发中,异常处理是一种重要的错误管理技术。它允许开发者优雅地处理运行时出现的错误,而不是让程序崩溃。本文将深入探讨PHP中的异常处理机制,包括异常的基本概念,如何抛出和捕获异常,以及如何使用自定义异常类。通过理解和应用这些概念,开发者可以编写出更健壮、更稳定的代码。
|
2天前
|
PHP 开发者
深入PHP命名空间:代码模块化和避免冲突
【5月更文挑战第26天】在现代PHP开发中,命名空间是实现代码模块化、防止类名和函数名冲突的关键技术。本文将深入探讨PHP命名空间的概念、实现原理及其在实际项目中的应用,帮助开发者更好地理解和使用命名空间,提高代码的可维护性和可扩展性。
|
3天前
|
编解码 5G Linux
FFmpeg开发笔记(二十一)Windows环境给FFmpeg集成AVS3解码器
AVS3是中国首个8K及5G视频编码标准,相比AVS2和HEVC性能提升约30%。解码器libuavs3d支持8K/60P视频实时解码,兼容多种平台。《FFmpeg开发实战》书中介绍了在Windows环境下如何集成libuavs3d到FFmpeg。集成步骤包括下载源码、使用Visual Studio 2022编译、调整配置、安装库文件和头文件,以及重新配置和编译FFmpeg以启用libuavs3d。
18 0
FFmpeg开发笔记(二十一)Windows环境给FFmpeg集成AVS3解码器
|
14天前
|
PHP
利用一段代码轻松绕过PHP授权系统
利用一段代码轻松绕过PHP授权系统
19 0
|
14天前
|
算法 Linux Windows
FFmpeg开发笔记(十七)Windows环境给FFmpeg集成字幕库libass
在Windows环境下为FFmpeg集成字幕渲染库libass涉及多个步骤,包括安装freetype、libxml2、gperf、fontconfig、fribidi、harfbuzz和libass。每个库的安装都需要下载源码、配置、编译和安装,并更新PKG_CONFIG_PATH环境变量。最后,重新配置并编译FFmpeg以启用libass及相关依赖。完成上述步骤后,通过`ffmpeg -version`确认libass已成功集成。
29 1
FFmpeg开发笔记(十七)Windows环境给FFmpeg集成字幕库libass
|
14天前
|
计算机视觉 Windows
OpenCV + CLion在windows环境下使用CMake编译, 出现Mutex相关的错误的解决办法
OpenCV + CLion在windows环境下使用CMake编译, 出现Mutex相关的错误的解决办法
20 0
|
14天前
|
Web App开发 JavaScript 前端开发
Windows环境下 NVM 介绍、下载安装及使用详解
Windows环境下 NVM 介绍、下载安装及使用详解
44 0
|
14天前
|
编解码 Linux Windows
FFmpeg开发笔记(十三)Windows环境给FFmpeg集成libopus和libvpx
本文档介绍了在Windows环境下如何为FFmpeg集成libopus和libvpx库。首先,详细阐述了安装libopus的步骤,包括下载源码、配置、编译和安装,并更新环境变量。接着,同样详细说明了libvpx的安装过程,注意需启用--enable-pic选项以避免编译错误。最后,介绍了重新配置并编译FFmpeg以启用这两个库,通过`ffmpeg -version`检查是否成功集成。整个过程参照了《FFmpeg开发实战:从零基础到短视频上线》一书的相关章节。
35 0
FFmpeg开发笔记(十三)Windows环境给FFmpeg集成libopus和libvpx
|
14天前
|
编解码 Linux Windows
FFmpeg开发笔记(十一)Windows环境给FFmpeg集成vorbis和amr
在Windows环境下,为FFmpeg集成音频编解码库,包括libogg、libvorbis和opencore-amr,涉及下载源码、配置、编译和安装步骤。首先,安装libogg,通过配置、make和make install命令完成,并更新PKG_CONFIG_PATH。接着,安装libvorbis,同样配置、编译和安装,并修改pkgconfig文件。之后,安装opencore-amr。最后,重新配置并编译FFmpeg,启用ogg和amr支持,通过ffmpeg -version检查是否成功。整个过程需确保环境变量设置正确,并根据路径添加相应库。
37 1
FFmpeg开发笔记(十一)Windows环境给FFmpeg集成vorbis和amr