strictphp / conventions
我们的代码规范由 PHPStan、Easy Coding Standard、RectorPHP 以及适当的自定义规则和配置强制实施。
v1.0.3
2024-06-30 14:08 UTC
Requires
- php: >=8.1
- nikic/php-parser: ^v5.0.2
- phpstan/extension-installer: ^1.3.1
- phpstan/phpdoc-parser: ^1.28.0
- phpstan/phpstan: ^1.10.66
- phpstan/phpstan-deprecation-rules: ^1.1.4
- phpstan/phpstan-phpunit: ^v1.3.16
- phpunit/phpunit: ^10.5 || ^11.0.1
- rector/rector: ^1.0.4
- symplify/easy-coding-standard: ^12.1.14
README
欢迎来到 StrictPHP 规范,这是一个 Composer 包,旨在标准化我们的各种项目中的 PHP 代码。这个包集合了一系列的工具和配置,用于提高代码质量、可维护性和最佳实践。它专为寻求在项目中实现一致性和卓越的开发者精心打造,我们鼓励大家采用它。欢迎 Pull Requests!
包含的功能
此包捆绑了一系列强大的工具和配置,以支持您的开发工作流程
- PHPStan 配置和自定义规则:集成了 PHPStan,并提供了针对我们项目的预定义配置和规则。
- Easy Coding Standard 配置:利用 Easy Coding Standard 来强制执行一致的编码风格和实践。
- PHPUnit 10/11 支持:确保与 PHPUnit 兼容,以方便全面的测试。
- RectorPHP 配置:提供 RectorPHP 的配置,以改善代码质量。
- 扩展 PHPStan 包:包括额外的包以增强 PHPStan 的功能。更多详细信息,请参阅包含的
composer.json
文件。
对于 Laravel,请使用 LaraStrict 规范。
先决条件
在安装之前,请确保您的环境满足以下要求
- PHP 版本 8.1 或更高。
- Composer
- 启用 PHPStan 扩展安装器 - 它由我们的包安装,以允许扩展发现。
仅维护此包的最新主要版本。
安装
要将 StrictPHP 规范纳入您的项目,请简单地在您的终端中运行以下命令
composer require strictphp/conventions --dev
这将安装此包作为开发依赖项。您将被提示确认插件的安装
您是否信任 "phpstan/extension-installer" 执行代码,并希望现在启用它?(是/否) [y]
输入 y
以使用包提供的所有扩展。
入门指南
安装后,您可以根据项目的具体需求扩展提供的配置。
设置 Easy Coding Standard
要使用 Easy Coding Standard,请在项目的根目录中创建一个 ecs.php
文件,使用此设置或更新您的配置
<?php declare(strict_types=1); use Symplify\EasyCodingStandard\Config\ECSConfig; return ECSConfig::configure() ->withRootFiles() ->withPaths([ __DIR__ . '/src', __DIR__ . '/tests', ]) // This is required to include the StrictPHP Conventions ->withSets([\StrictPhp\Conventions\ExtensionFiles::Ecs]);
配置 RectorPHP
要集成 RectorPHP,请在项目的根目录中添加一个 rector.php
文件,使用以下配置或更新您的配置
<?php declare(strict_types=1); use Rector\Config\RectorConfig; return RectorConfig::configure() ->withRootFiles() ->withPaths([ __DIR__ . '/src', __DIR__ . '/tests', ]) // This is required to include the StrictPHP Conventions ->withSets([\StrictPhp\Conventions\ExtensionFiles::Rector]);
集成 PHPStan
您需要使用 phpstan 扩展安装器来安装所需的扩展。这是一个推荐设置
parameters: level: max paths: - src - ecs.php - rector.php - extension-ecs.php - extension-rector.php
致谢
此项目得益于几个其他有影响力的项目的慷慨支持
- Canvastera - 帮助用户制作多媒体海报并在全球范围内分享。 (教育/爱好)
- Azzurro 旅行社 - 专注于意大利度假。
- Redtag Studio - 为您的娱乐制作数字产品。
探索更多我们的开源项目
- Larastrict - 通过一系列便捷的工具和包增强 Laravel 框架。
- StrictPHP - 通过一系列精选的包和约定,在 PHP 项目中启用严格性,促进稳健的生产级应用的开发。
- WrkFlow - 使用一套全面工具简化开发工作流程,提高效率。
许可证
开源软件,根据 MIT 许可证 许可。您可以自由使用和修改以满足您的需求。