sandwave-io/php-cs-fixer-config

适用于所有Sandwave.io PHP代码的通用代码风格配置。

1.0.2 2023-06-30 09:16 UTC

This package is auto-updated.

Last update: 2024-08-30 01:38:26 UTC


README

GitHub Workflow Status Packagist PHP Version Support Packagist PHP Version Support Packagist Downloads

这是一个在Sandwave.io项目中主要使用的共享FriendsOfPHP/php-cs-fixer配置。但如果您愿意,也可以在您的项目中使用它。此外,如果您想提出更改,请随意创建PR 😁

此包可用于PHP 7.4、8.0和8.1。

安装

composer require --dev sandwave-io/php-cs-fixer-config

PHP-CS-Fixer 2.0

如果您在项目中仍在使用PHP-CS-Fixer的v2.x版本,您应使用此包的版本 <1.2.x。

composer require --dev sandwave-io/php-cs-fixer-config:1.2.*

请注意,此版本不再维护,您应升级到PHP-CS-Fixer的最新版本。

使用

在项目的根目录中创建一个.php-cs-fixer.php配置文件。

<?php

$config = new SandwaveIo\PhpCsFixerConfig\Config;
$config->getFinder()
    ->in(__DIR__ . "/src")
    ->in(__DIR__ . "/tests");

return $config;

同时,请确保在您的git仓库中忽略.php_cs.cache文件。

添加/覆盖规则

可能您想更改一些规则。没问题,您可以根据以下方法覆盖或添加规则

<?php

$config = new SandwaveIo\PhpCsFixerConfig\Config([
    'declare_strict_types' => true,
]);
$config->getFinder()
    ->in(__DIR__ . "/src")
    ->in(__DIR__ . "/tests");

return $config;

请注意,默认情况下允许使用有风险的修复程序!

无风险修复程序的示例

<?php

$ruleOverrides = [
    'no_php4_constructor' => false,
    'pow_to_exponentiation' => false,
    'no_unneeded_final_method' => false,
    'no_unreachable_default_argument_value' => false,
    'php_unit_strict' => false,
    'psr4' => false,
];

$config = new SandwaveIo\PhpCsFixerConfig\Config($ruleOverrides, false);

$config->getFinder()
    ->in(__DIR__ . '/src')
    ->in(__DIR__ . '/tests');

return $config;

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件

特别感谢

特别感谢Jesse Kramer为这个最初的项目所做的贡献!