> 백엔드 개발 > PHP 튜토리얼 > PHP_CodeSniffer란 무엇입니까? 설치 및 사용 방법은 무엇입니까?

PHP_CodeSniffer란 무엇입니까? 설치 및 사용 방법은 무엇입니까?

藏色散人
풀어 주다: 2023-04-10 21:12:01
앞으로
4681명이 탐색했습니다.

이 기사에서는 PHP_CodeSniffer와 설치 및 사용 튜토리얼을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

PHP_CodeSniffer는 자동 PHP 코드 사양 확인 도구입니다.

CodeSniffer에는 MySource, PEAR, PHPCS, PSR1, PSR2가 내장되어 있습니다. >, Squiz 및 Zend와 같은 여러 가지 코드 사양 세트가 있습니다. MySourcePEARPHPCSPSR1PSR2SquizZend等几套代码规范。

当然,你也可以新增自己的代码规范

PHP_CodeSniffer包含两个工具,phpcs用来检查代码规范phpcbf用来纠正代码规范

1 安装

PHP_CodeSniffer 有好几种安装方式。

1.1 可执行文件方式安装

用git命令下载(或直接下载)仓库源码,然后直接执行:

git clone https://github.com/squizlabs/PHP_CodeSniffer.git
cd PHP_CodeSniffer
php bin/phpcs -h
php bin/phpcbf -h
로그인 후 복사

要使用非最新版本,可以到PEAR下载,地址:http://pear.php.net/package/PHP_CodeSniffer/download

例如,要用2.9.1,PEAR下载之后解压,执行的命令是:

php scripts/phpcs -h
php scripts/phpcbf -h
로그인 후 복사

与 githuh 下载不同的是,执行文件在scripts目录。

1.2 phar文件安装方式

phar也就是php archive,把php文件打包成一个文件供服务。

Linux系统用命令下载phar文件:

curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar
curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar
로그인 후 복사

Windows系统用浏览器访问上面的两个链接,下载这两个phar文件。

然后在phar文件的目录里面执行:

php phpcs.phar -h
php phpcbf.phar -h
로그인 후 복사

能看到phpcs和phpcbf的帮助信息,说明安装成功。

说明:

  • 这种方式要保证php可执行文件已经添加到PATH环境,不然就得指定绝对目录
  • 每次执行必须把这两个.phar文件放到对应目录,然后在那个目录下运php phpcs.phar xxx行命令

1.3 pear安装方式

如果本地安装了pear(pear安装方法),也可以通过pear来安装PHP_CodeSniffer,命令:

pear install PHP_CodeSniffer
로그인 후 복사

通过pear安装后,CodeSniffer的规范文件会安装在:/path/to/pear/PHP/CodeSniffer/src/Standards

1.4 composer安装方式

composer安装也很方便,一个命令:

composer global require "squizlabs/php_codesniffer=*"
로그인 후 복사

说明:这里需要composer命令已经在PATH环境变量中。

也可以在composer.json文件中使用:

{
    "require-dev": {
        "squizlabs/php_codesniffer": "3.*"
    }
}
로그인 후 복사

完成后执行命令:

./vendor/bin/phpcs -h
./vendor/bin/phpcbf -h
로그인 후 복사

1.5 配置phpcs直接在命令行中执行

以上的方式中,除了pear安装方式,其他方式要执行phpcs命令,都需要在前面加上php。

如果是Linux提供,因为php执行文件路径已经在环境PATH中,所以把bin(或scripts) 的路径加入PATH,就可以在终端执行phpcs命令了。

但是在Windows系统中,实际是执行phpcs.bat文件,这个文件又引用了同目录下的phpcs文件。

在phpcs.bat中,我们需要配置两个变量,才能在CMD中正确执行phpcs命令。

如下,需指定php.exephpcs

물론,

자신만의 코드 사양을 추가할 수도

.

PHP_CodeSniffer에는 두 가지 도구가 포함되어 있습니다. phpcs코드 사양을 확인하는 데 사용됩니다. phpcbf

코드 사양을 수정

하는 데 사용됩니다.

1 설치

PHP_CodeSniffer에는 여러 가지 설치 방법이 있습니다. 1.1 실행 파일로 설치

git 명령을 사용하여 웨어하우스 소스 코드를 다운로드(또는 직접 다운로드)한 후 직접 실행:

if "%PHPBIN%" == "" set PHPBIN=D:\php56n\php.exe
if not exist "%PHPBIN%" if "%PHP_PEAR_PHP_BIN%" neq "" goto USE_PEAR_PATH
GOTO RUN
:USE_PEAR_PATH
set PHPBIN=%PHP_PEAR_PHP_BIN%
:RUN
"%PHPBIN%" "D:\www\PHP_CodeSniffer-2.9.1\scripts\phpcs" %*
로그인 후 복사
최신 버전이 아닌 버전을 사용하려면, PEAR(주소:http://pear.php.net/package/PHP_CodeSniffer/download

)에서 다운로드할 수 있습니다. 예를 들어 2.9.1을 사용하려면 PEAR를 다운로드하고 압축을 푼 후, 실행할 명령은

$ phpcs /path/to/code/myfile.php                        # 检查文件
$ phpcs /path/to/code                                   # 检查目录和子目录下的所有文件
$ phpcs -l /path/to/code                                # 检查目录下的所有文件,不包括子目录
$ phpcs /path/to/code/myfile.inc /path/to/code/my_dir   # 检查文件和目录
로그인 후 복사
githuh download와 다릅니다. 네, 실행 파일은 scripts 디렉터리에 있습니다. 🎜🎜1.2 phar 파일 설치 방법 🎜🎜🎜phar도 🎜php archive🎜로, php 파일을 하나의 파일로 패키징하여 서비스합니다. 🎜🎜Linux 시스템의 경우 다음 명령을 사용하여 phar 파일을 다운로드합니다. 🎜
$ phpcs /path/to/code/myfile.php

FILE: /path/to/code/myfile.php
--------------------------------------------------------------------------------
FOUND 5 ERROR(S) AND 1 WARNING(S) AFFECTING 5 LINE(S)
--------------------------------------------------------------------------------
  2 | ERROR   | Missing file doc comment
 20 | ERROR   | PHP keywords must be lowercase; expected "false" but found
    |         | "FALSE"
 47 | ERROR   | Line not indented correctly; expected 4 spaces but found 1
 47 | WARNING | Equals sign not aligned with surrounding assignments
 51 | ERROR   | Missing function doc comment
 88 | ERROR   | Line not indented correctly; expected 9 spaces but found 6
--------------------------------------------------------------------------------
로그인 후 복사
로그인 후 복사
🎜Windows 시스템의 경우 브라우저를 사용하여 위의 두 링크에 액세스하고 이 두 phar 파일을 다운로드합니다. 🎜🎜그런 다음 phar 파일 디렉터리에서 실행합니다. 🎜
$ phpcs -n /path/to/code/myfile.php
로그인 후 복사
로그인 후 복사
🎜 phpcs 및 phpcbf의 도움말 정보를 보면 설치가 성공했음을 알 수 있습니다. 🎜🎜🎜참고: 🎜🎜
  • 🎜이 방법은 PHP 실행 파일이 PATH 환경에 추가되었는지 확인해야 합니다. 그렇지 않으면 절대 디렉터리를 지정해야 합니다🎜
  • 🎜이것은 다음과 같아야 합니다. 실행될 때마다 추가됩니다. 두 개의 🎜.phar🎜 파일을 해당 디렉터리에 배치한 후 🎜php phpcs.phar xxx🎜line 명령🎜
  • 을 실행합니다. >
해당 디렉토리에 🎜1.3 배 설치 방법🎜🎜🎜배가 로컬에 설치된 경우(pear 설치 방법), pear를 통해 PHP_CodeSniffer를 설치할 수도 있습니다. 다음 명령: 🎜
$ phpcs --report=summary /path/to/code
로그인 후 복사
로그인 후 복사
🎜pear를 통해 설치한 후 CodeSniffer 사양 파일이 설치됩니다. 위치: /path/to /pear/PHP/CodeSniffer/src/Standards. 🎜🎜1.4 컴포저 설치 방법🎜🎜🎜컴포저 설치도 매우 편리합니다. 명령 하나: 🎜
$ phpcs --standard=PEAR /path/to/code/myfile.inc                      # 使用内置规范
$ phpcs --standard=/path/to/MyStandard /path/to/code/myfile.inc       # 使用指定路径下的规范
$ phpcs --standard=PEAR,PHPCS,/path/to/MyStandard file.php            # 使用多个规范

$ phpcs --config-set default_standard Squiz                           # 修改默认规范为Squiz(原本是PEAR)
로그인 후 복사
로그인 후 복사
🎜🎜지침: 🎜🎜여기에 필요함🎜composer🎜명령은 다음과 같습니다. 이미🎜 PATH🎜환경 변수가 있습니다. 🎜🎜🎜는 작곡가.json 파일에서도 사용할 수 있습니다: 🎜
$ phpcs -i
로그인 후 복사
로그인 후 복사
🎜완료 후 명령 실행: 🎜
$ phpcs -h
로그인 후 복사
로그인 후 복사
🎜1.5 명령줄에서 직접 실행되도록 phpcs 구성 🎜🎜🎜추가로 위의 방법들에 Pear 설치 방법, phpcs 명령을 실행하는 다른 방법들에는 앞에 php를 추가해야 합니다. 🎜🎜Linux에서 제공하는 경우 php 실행 파일 경로가 이미 PATH 환경에 있으므로 bin(또는 scripts 경로를 추가하세요. code>) PATH, 터미널에서 phpcs 명령을 실행할 수 있습니다. 🎜🎜그러나 Windows 시스템에서는 실제로 🎜phpcs.bat🎜 파일이 실행되는데, 이 파일은 동일한 디렉토리에 있는 🎜phpcs🎜 파일을 참조합니다. 🎜🎜CMD에서 phpcs 명령을 올바르게 실행하려면 phpcs.bat에서 두 개의 변수를 구성해야 합니다. 🎜🎜다음과 같이 php.exephpcs 파일의 절대 위치를 지정해야 합니다. 🎜rrreee🎜그런 다음 경로 D: wwwPHP_CodeSniffer-2.9.1scripts를 추가합니다. PATH, CMD에서 phpcs를 실행할 수 있습니다. 🎜🎜🎜🎜참고: phpcbf에도 이러한 수정이 필요합니다. 🎜🎜🎜🎜🎜2 🎜🎜🎜을 사용하면 위에서 PHP_CodeSniffer에 두 개의 명령이 있음을 알 수 있습니다. 🎜🎜기본적으로 PHP_CodeSniffer는 PEAR 사양을 사용하여 코드를 확인합니다. 🎜🎜🎜2.1 🎜🎜🎜 명령 사용 다음 명령은 기본 사양을 사용하여 파일과 디렉터리를 확인합니다. 🎜rrreee🎜🎜2.2 결과 확인🎜🎜🎜기본적으로 확인 결과에는 다음과 같은 오류와 경고가 포함되어 있습니다. 🎜
$ phpcs /path/to/code/myfile.php

FILE: /path/to/code/myfile.php
--------------------------------------------------------------------------------
FOUND 5 ERROR(S) AND 1 WARNING(S) AFFECTING 5 LINE(S)
--------------------------------------------------------------------------------
  2 | ERROR   | Missing file doc comment
 20 | ERROR   | PHP keywords must be lowercase; expected "false" but found
    |         | "FALSE"
 47 | ERROR   | Line not indented correctly; expected 4 spaces but found 1
 47 | WARNING | Equals sign not aligned with surrounding assignments
 51 | ERROR   | Missing function doc comment
 88 | ERROR   | Line not indented correctly; expected 9 spaces but found 6
--------------------------------------------------------------------------------
로그인 후 복사
로그인 후 복사

如果不要显示警告,加个-n参数:

$ phpcs -n /path/to/code/myfile.php
로그인 후 복사
로그인 후 복사

仅显示检查结果概要:

$ phpcs --report=summary /path/to/code
로그인 후 복사
로그인 후 복사

2.3 指定规范

可以使用 -- standard参数指定一个或多个规范来检查。

$ phpcs --standard=PEAR /path/to/code/myfile.inc                      # 使用内置规范
$ phpcs --standard=/path/to/MyStandard /path/to/code/myfile.inc       # 使用指定路径下的规范
$ phpcs --standard=PEAR,PHPCS,/path/to/MyStandard file.php            # 使用多个规范

$ phpcs --config-set default_standard Squiz                           # 修改默认规范为Squiz(原本是PEAR)
로그인 후 복사
로그인 후 복사

查看现有规范:

$ phpcs -i
로그인 후 복사
로그인 후 복사

2.4 查看帮助

$ phpcs -h
로그인 후 복사
로그인 후 복사

推荐学习:《PHP视频教程

위 내용은 PHP_CodeSniffer란 무엇입니까? 설치 및 사용 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:awaimai.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿