PHP_CodeSniffer是一组两个PHP脚本; 主要的是 phpcs 脚本,用于标记PHP,JavaScript和CSS文件以检测违反定义的编码标准,第二个 phpcbf 脚本用于自动纠正编码标准违例。 PHP_CodeSniffer是一个重要的开发工具,确保您的代码保持干净和一致。
PHP_CodeSniffer
PHP_CodeSniffer 解析PHP,JavaScript和CSS文件,并检测违反定义的一组编码标准。(PHP_CodeSniffer tokenizer PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.)
Github星跟蹤圖
主要指標
- 概覽
-
名稱與所有者 squizlabs/PHP_CodeSniffer 主編程語言 PHP 編程語言 PHP (語言數: 5) 平台 許可證 BSD 3-Clause "New" or "Revised" License - 所有者活动
-
創建於 2011-11-03 04:06:24 推送於 2024-04-01 20:37:32 最后一次提交 2023-12-06 11:28:34 發布數 88 最新版本名稱 3.7.2 (發布於 2023-02-23 10:12:04) 第一版名稱 1.3.1 (發布於 2011-11-03 15:18:51) - 用户参与
-
星數 10.7k 關注者數 193 派生數 1.5k 提交數 7.4k 已啟用問題? 問題數 2306 打開的問題數 224 拉請求數 1023 打開的拉請求數 57 關閉的拉請求數 520 - 项目设置
-
已啟用Wiki? 已存檔? 是復刻? 已鎖定? 是鏡像? 是私有?
About
PHP_CodeSniffer is a set of two PHP scripts; the main phpcs
script that tokenizes PHP, JavaScript and CSS files to detect violations of a defined coding standard, and a second phpcbf
script to automatically correct coding standard violations. PHP_CodeSniffer is an essential development tool that ensures your code remains clean and consistent.
Requirements
PHP_CodeSniffer requires PHP version 5.4.0 or greater, although individual sniffs may have additional requirements such as external applications and scripts. See the Configuration Options manual page for a list of these requirements.
If you're using PHP_CodeSniffer as part of a team, or you're running it on a CI server, you may want to configure your project's settings using a configuration file.
Installation
The easiest way to get started with PHP_CodeSniffer is to download the Phar files for each of the commands:
# Download using curl
curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar
curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar
# Or download using wget
wget https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar
wget https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar
# Then test the downloaded PHARs
php phpcs.phar -h
php phpcbf.phar -h
Composer
If you use Composer, you can install PHP_CodeSniffer system-wide with the following command:
composer global require "squizlabs/php_codesniffer=*"
Make sure you have the composer bin dir in your PATH. The default value is ~/.composer/vendor/bin/
, but you can check the value that you need to use by running composer global config bin-dir --absolute
.
Or alternatively, include a dependency for squizlabs/php_codesniffer
in your composer.json
file. For example:
{
"require-dev": {
"squizlabs/php_codesniffer": "3.*"
}
}
You will then be able to run PHP_CodeSniffer from the vendor bin directory:
./vendor/bin/phpcs -h
./vendor/bin/phpcbf -h
Phive
If you use Phive, you can install PHP_CodeSniffer as a project tool using the following commands:
phive install phpcs
phive install phpcbf
You will then be able to run PHP_CodeSniffer from the tools directory:
./tools/phpcs -h
./tools/phpcbf -h
PEAR
If you use PEAR, you can install PHP_CodeSniffer using the PEAR installer. This will make the phpcs
and phpcbf
commands immediately available for use. To install PHP_CodeSniffer using the PEAR installer, first ensure you have installed PEAR and then run the following command:
pear install PHP_CodeSniffer
Git Clone
You can also download the PHP_CodeSniffer source and run the phpcs
and phpcbf
commands directly from the Git clone:
git clone https://github.com/squizlabs/PHP_CodeSniffer.git
cd PHP_CodeSniffer
php bin/phpcs -h
php bin/phpcbf -h
Getting Started
The default coding standard used by PHP_CodeSniffer is the PEAR coding standard. To check a file against the PEAR coding standard, simply specify the file's location:
$ phpcs /path/to/code/myfile.php
Or if you wish to check an entire directory you can specify the directory location instead of a file.
$ phpcs /path/to/code-directory
If you wish to check your code against the PSR-2 coding standard, use the --standard
command line argument:
$ phpcs --standard=PSR2 /path/to/code-directory
If PHP_CodeSniffer finds any coding standard errors, a report will be shown after running the command.
Full usage information and example reports are available on the usage page.
Documentation
The documentation for PHP_CodeSniffer is available on the Github wiki.
Issues
Bug reports and feature requests can be submitted on the Github Issue Tracker.
Contributing
See CONTRIBUTING.md for information.
Versioning
PHP_CodeSniffer uses a MAJOR.MINOR.PATCH
version number format.
The MAJOR
version is incremented when:
- backwards-incompatible changes are made to how the
phpcs
orphpcbf
commands are used, or - backwards-incompatible changes are made to the
ruleset.xml
format, or - backwards-incompatible changes are made to the API used by sniff developers, or
- custom PHP_CodeSniffer token types are removed, or
- existing sniffs are removed from PHP_CodeSniffer entirely
The MINOR
version is incremented when:
- new backwards-compatible features are added to the
phpcs
andphpcbf
commands, or - backwards-compatible changes are made to the
ruleset.xml
format, or - backwards-compatible changes are made to the API used by sniff developers, or
- new sniffs are added to an included standard, or
- existing sniffs are removed from an included standard
NOTE: Backwards-compatible changes to the API used by sniff developers will allow an existing sniff to continue running without producing fatal errors but may not result in the sniff reporting the same errors as it did previously without changes being required.
The PATCH
version is incremented when:
- backwards-compatible bug fixes are made
NOTE: As PHP_CodeSniffer exists to report and fix issues, most bugs are the result of coding standard errors being incorrectly reported or coding standard errors not being reported when they should be. This means that the messages produced by PHP_CodeSniffer, and the fixes it makes, are likely to be different between PATCH versions.