weerd/php-style

为 PHP 代码标准修复工具提供可分享的预配置基本样式规则。

v1.2.0 2021-02-15 00:05 UTC

This package is auto-updated.

Last update: 2024-09-15 08:23:48 UTC


README

此包提供了一个简单的方法来应用预配置的基本样式规则,适用于 PHP 代码标准修复工具,可以方便地在使用 PHP 7+ 的项目和包之间共享。

您可以使用默认规则进行配置,或者您可以指定不同的支持的基本规则集,包括您想包含的任何附加规则或覆盖。

安装

$ composer require weerd/php-style

使用

在您的项目或包的根目录中添加一个 .php_cs.dist 文件。

在该文件中,创建一个新的 PhpCsFixer\Finder 实例,并配置 PHP CS Fixer 工具应查找修复代码样式的文件和目录。

接下来,调用 Weerd\PhpStyle\configure() 函数,并将查找器的实例作为第一个参数传递。

以下是一些示例,以及使用 $options 数组的变体

使用默认规则集的示例

以下示例返回一个包含 PHP 样式默认规则的配置。

<?php

use PhpCsFixer\Finder;
use function Weerd\PhpStyle\configure;

$finder = Finder::create()
    ->in([
        __DIR__.'/src',
        __DIR__.'/tests',
    ]);

return configure($finder);

使用默认规则集和附加规则的示例

以下示例返回一个包含默认规则,以及包含在最终 PHP 样式规则集中的两个附加规则的配置。

<?php

use PhpCsFixer\Finder;
use function Weerd\PhpStyle\configure;

$finder = Finder::create()
    ->in([
        __DIR__.'/src',
        __DIR__.'/tests',
    ]);

$options = [
  'rules' => [
    'single_quote' => true,
    'trim_array_spaces' => true,
  ],
];

return configure($finder, $options);

使用 laravel 规则集的示例

以下示例返回一个包含 laravel 规则的配置。

<?php

use PhpCsFixer\Finder;
use function Weerd\PhpStyle\configure;

$finder = Finder::create()
    ->in([
        __DIR__.'/app',
        __DIR__.'/config',
        __DIR__.'/database',
        __DIR__.'/routes',
        __DIR__.'/tests',
    ])
    ->notName('*.blade.php');

return configure($finder, ['base' => 'laravel']);

一旦您设置了 .php_cs.dist 文件,您可以通过以下命令运行 PHP CS Fixer 工具:

$ vendor/bin/php-cs-fixer fix --allow-risky=yes

或者为了更方便,将此命令添加到 composer.json 文件中的脚本

// composer.json

{
    "scripts": {
        "format": "vendor/bin/php-cs-fixer fix --allow-risky=yes"
    }
}

现在,您可以使用以下 composer 命令运行 PHP CS Fixer 工具:

$ composer format

鸣谢

🙌 感谢 @Spatie 和他们的 Laravel Package Training 课程,介绍了 PHP 代码标准修复工具及其使用方法!

🙌 此包深受 @timacdonald 的优秀文章 如何共享 PHP CS Fixer 规则 的启发!

🙌 Laravel 专用规则的完整集归功于 @laravel-shift,并在 gist 中共享的编译规则上使用,并在 Laravel Shift 上使用!