PHP DocBlock Checker

February 25, 2020 ยท View on GitHub

Check PHP files within a directory for appropriate use of Docblocks.

Installation

Composer:
composer require dancryer/php-docblock-checker

Usage

CMD:
call vendor/bin/phpdoccheck {params}

To validate changed files in the last git commit:

git diff --name-only HEAD HEAD^ | ./vendor/bin/phpdoccheck --from-stdin

If used within a travis context, this may be useful: git diff --name-only ${TRAVIS_COMMIT_RANGE:-"HEAD^"} | ./vendor/bin/phpdoccheck --from-stdin

Parameters

Parameters may be passed either from the command line, or via a config file (defaults to phpdoccheck.yml in the currrent working directory).

The config file location may be overriden by specifying the --config-file option

If a parameter is specified in both places, the command line will take priority.

ShortLongDescription
-h--helpDisplay help message.
-x--exclude=EXCLUDEFiles and directories (absolute or pattern) to exclude.
-d--directory=DIRECTORYDirectory to scan. [default: "./"]
none--cache-file=FILEUse cache file to speed up processing.
none--config-file=FILEUse config file to specify options [default: "./phpdoccheck.yml"].
none--from-stdinUse list of files provided via stdin
none--skip-classesDon't check classes for docblocks.
none--skip-methodsDon't check methods for docblocks.
none--skip-signaturesDon't check docblocks against method signatures.
none--only-signaturesOnly check methods that have parameters or returns.
-j--jsonOutput JSON instead of a log.
-l--files-per-line=FILES-PER-LINENumber of files per line in progress [default: 50]
-w--fail-on-warningsConsider the check failed if any warnings are produced.
-i--info-onlyInformation-only mode, just show summary.
-q--quietDo not output any message.
-V--versionDisplay this application version.
none--ansiForce ANSI output.
none--no-ansiDisable ANSI output.
-n--no-interactionDo not ask any interactive question.
-v -vv -vvv--verboseIncrease the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug.

Each option is also available in the config file:

directory: src
files-per-line: 10
cache-file: .phpdoccheck
exclude:
  - foo/bar/baz.php
  - foo/*
options:
  - skip-classes
  - skip-methods
  - skip-signatures
  - only-signatures
  - fail-on-warnings
  - info-only
  - from-stdin
  - json