PHPDoctor
0.6.5
检查缺失类型的PHP文件或目录。
如果您已经使用phpstan进行类型检查,但是有时候团队中的某人仍然提交非打字代码,则PHPDOCTOR适合您。
https://github.com/voku/phpdoctor/releases
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']您可以在@param或@return phpdoc中使用<phpdoctor-ignore-this-line/>直接忽略代码中的错误。
/**
* @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 ;
}准备:https://github.com/phar-io/phive
phive install humbug/box
php tools/box compile --debug有关支持和捐款,请访问Github |问题|贝宝| Patreon。
有关状态更新和发布公告,请访问发布| Twitter | Patreon。
有关专业支持,请与我联系。