voku / phpdoctor
检查缺少或错误的 phpdoc 注释。
0.6.5
2022-10-31 11:55 UTC
Requires
- php: >=7.2
- symfony/console: ~3.4 || ~4.1 || ~5.0 || ~6.0
- voku/simple-php-code-parser: ~0.19.0
Requires (Dev)
- phpunit/phpunit: ~6.0 || ~7.0 || ~9.0
This package is auto-updated.
Last update: 2024-08-31 00:35:43 UTC
README
🏥 PHPDoctor
检查 PHP 文件或目录中缺少的类型。
如果您已经使用 PHPStan 进行类型检查,但团队中有时仍有人提交未类型化的代码,那么 PHPDoctor 就适合您。
通过 "phar" 安装(推荐)
https://github.com/voku/PHPDoctor/releases
通过 "composer require" 安装
composer require-dev voku/phpdoctor
快速入门
Usage:
analyse [options] [--] <path...>
Arguments:
path The path to analyse
Options:
--autoload-file[=AUTOLOAD-FILE] The path to your autoloader. [default: ""]
--access[=ACCESS] Check for "public|protected|private" methods. [default: "public|protected|private"]
--skip-ambiguous-types-as-error[=SKIP-AMBIGUOUS-TYPES-AS-ERROR] Skip check for ambiguous types. (false or true) [default: "false"]
--skip-deprecated-functions[=SKIP-DEPRECATED-FUNCTIONS] Skip check for deprecated functions / methods. (false or true) [default: "false"]
--skip-functions-with-leading-underscore[=SKIP-FUNCTIONS-WITH-LEADING-UNDERSCORE] Skip check for functions / methods with leading underscore. (false or true) [default: "false"]
--skip-parse-errors[=SKIP-PARSE-ERRORS] Skip parse errors in the output. (false or true) [default: "true"]
--path-exclude-regex[=PATH-EXCLUDE-REGEX] Skip some paths via regex e.g. "#/vendor/|/other/.*/path/#i" [default: "#/vendor/|/tests/#i"]
演示
解析字符串
$code = ' <?php declare(strict_types = 1); class HelloWorld { /** * @param mixed $date */ public function sayHello($date): void { echo \'Hello, \' . $date->format(\'j. n. Y\'); } }'; $phpdocErrors = PhpCodeChecker::checkFromString($code); // [8]: missing parameter type for HelloWorld->sayHello() | parameter:date']
忽略错误
您可以在代码中直接使用 <phpdoctor-ignore-this-line/>
在 @param 或 @return phpdocs 中忽略错误。
/** * @param mixed $lall <p>this is mixed but it is ok, because ...</p> <phpdoctor-ignore-this-line/> * * @return array <phpdoctor-ignore-this-line/> */ function foo_ignore($lall) { return $lall; }
构建 PHAR 文件
准备: https://github.com/phar-io/phive
phive install humbug/box php tools/box compile --debug
支持
请访问 Github | 问题 | PayPal | Patreon 以获取支持和捐赠。
请访问 发布 | Twitter | Patreon 以获取状态更新和发布公告。
如需专业支持,请联系 我。