symplify/phpstan-php-config

此包已被废弃,不再维护。作者建议使用 phpstan/phpstan 包。

使用 PHP 配置语法在 phpstan.php 中配置 PHPStan


README

Downloads

使用 PHP 配置语法在 phpstan.php 中配置 PHPStan

你在 Rector、ECS 和 Symfony 项目中从 YAML 转换到 PHP 配置了吗?你还需要 10 个理由 吗?

如果已经转换,那么 phpstan.neon 可能是设置中最后一个类似 YAML 的配置。由于 PHP 语法高度吸引人,类重命名、自动完成容易出错,因此缺失。

此包引入了 phpstan.php 语法,因此您可以使用 PHP 配置 PHPStan。

安装

composer require symplify/phpstan-php-config --dev

用法

创建 phpstan.php 并像任何其他带有 PHP 配置的 Symfony 项目一样进行配置

use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
use Symplify\PHPStanPHPConfig\ValueObject\Level;
use Symplify\PHPStanPHPConfig\ValueObject\Option;

return static function (ContainerConfigurator $containerConfigurator): void {
    $parameters = $containerConfigurator->parameters();

    $parameters->set(Option::LEVEL, Level::LEVEL_MAX);

    $parameters->set(Option::PATHS, [__DIR__ . '/packages']);

    $parameters->set(Option::PARALLEL_MAX_PROCESSES, 6);
    $parameters->set(Option::REPORT_UNMATCHED_IGNORED_ERRORS, false);
};

然后,在 composer.json 中添加或扩展 "phpstan" 脚本

{
    "scripts": {
        "phpstan": [
            "vendor/bin/phpstan-php-config convert phpstan.php --output-file phpstan-converted.neon",
            "vendor/bin/phpstan analyse --ansi --config phpstan-converter.neon"
        ]
    }
}

然后像往常一样运行 PHPStan

composer phpstan

如果一切正常,您可以使用自定义配置路径,并生成 phpstan.neon

{
    "scripts": {
        "phpstan": [
            "vendor/bin/phpstan-php-config convert phpstan.php",
            "vendor/bin/phpstan analyse --ansi"
        ]
    }
}

报告问题

如果您遇到错误或想请求新功能,请前往 Symplify 单一仓库问题跟踪器

贡献

此包的源代码包含在 Symplify 单一仓库中。我们欢迎在 symplify/symplify 上为此包做出贡献。