Awesome
gulp-phpcs
Gulp plugin for running PHP Code Sniffer.
Install
-
Choose correct version of gulp-phpcs. One should use
gulp-phpcs@1.x
for PHPCS 2.x andgulp-phpcs@2.x
with PHPCS 3.x. -
Install the plugin with the following command:
npm install gulp-phpcs --save-dev
Usage
var gulp = require('gulp');
var phpcs = require('gulp-phpcs');
gulp.task('default', function () {
return gulp.src(['src/**/*.php', '!src/vendor/**/*.*'])
// Validate files using PHP Code Sniffer
.pipe(phpcs({
bin: 'src/vendor/bin/phpcs',
standard: 'PSR2',
warningSeverity: 0
}))
// Log all problems that was found
.pipe(phpcs.reporter('log'));
});
API
phpcs(options)
options.bin
Type: String
Default: 'phpcs'
PHP Code Sniffer executable.
options.severity
Type: Integer
The minimum severity required to display an error or warning.
This option is equivalent to Code Sniffer --severity=<severity>
option.
options.warningSeverity
Type: Integer
The minimum severity required to display an error or warning.
This option is equivalent to Code Sniffer --warning-severity=<severity>
option.
options.errorSeverity
Type: Integer
The minimum severity required to display an error or warning.
This option is equivalent to Code Sniffer --error-severity=<severity>
option.
options.standard
Type: String
The name or path of the coding standard to use. One can use this option to specify custom phpcs.xml
file.
This option is equivalent to Code Sniffer --standard="<standard>"
option.
options.encoding
Type: String
The encoding of the files being checked.
This option is equivalent to Code Sniffer --encoding="<encoding>"
option.
options.report
Type: String
The report type to generate.
This option is equivalent to Code Sniffer --report="<report>"
option.
options.showSniffCode
Type: Boolean
Display sniff codes in the report.
This option is equivalent to Code Sniffer -s
option.
options.sniffs
Type: Array
Filter for executed Sniffs
This option is equivalent to Code Sniffer --sniffs
option.
options.exclude
Type: Array
Exclude some sniffs from ruleset.
This option is equivalent to Code Sniffer --exclude
option.
options.ignore
Type: Array
Ignore a list of paths
This option is equivalent to Code Sniffer --ignore
option.
options.cwd
Type: String
Set an explicit current working directory from which the phpcs
command should run.
options.colors
Type: Boolean
Pass colorized output of Code Sniffer to reporters.
This option is equivalent to Code Sniffer --colors
option.
Warning: This options is only compatible with 2.x branch of Code Sniffer.
phpcs.reporter(name[, options])
Loads one of the reporters that shipped with the plugin (see below).
name
Type: String
The name of the reporter that should be loaded.
options
Type: Object
Options for the reporter if needed.
Reporters
The plugin only pass files through PHP Code Sniffer. To process the results of the check one should use a reporter. Reporters are plugins too, so one can pipe a files stream to them. Several repotrers can be used on a stream, just like any other plugins.
These reporters are shipped with the plugin:
-
Fail reporter - fails if a problem was found. Use
phpcs.reporter('fail', {failOnFirst: true})
to load it.failOnFirst
option is used to choose when the reporter should fail on the first errored file or at the end of the file stream. This option can be omitted (true
is used by default). -
Log reporter - outputs all problems to the console. Use
phpcs.reporter('log')
to load it. -
File reporter - outputs all problems to a file. Use
phpcs.reporter('file', { path: "path/to/report.txt" })
to load it.
License
MIT © Dmitriy Simushev