invenso/rector

Invenso Rector Bundle 用于更新 API Platform 注释到属性

1.0.2 2024-01-18 14:13 UTC

This package is auto-updated.

Last update: 2024-09-18 15:52:13 UTC


README

Invenso Rector 可用于将 Api Platform 注释转换为属性

由于 PHP 版本 8.0 中,注释已被属性所替代

/**
 * @ApiResource 
 */
class BookEntity 
{
}

将会是

#[ApiResource] 
class BookEntity 
{
}

入门

要求

  • 必须安装 Api Platform
  • 必须安装 Rector

Rector 文档

安装

使用 composer 安装包

composer require invenso/rector

配置

可以通过向 rector.php 文件中添加配置来配置此包

在 rector 文件中添加以下行

$rectorConfig->sets([
    ApiPlatformSetList::ANNOTATIONS_TO_ATTRIBUTES,
]);

最佳实践是包含所有 ANNOTATIONS_TO_ATTRIBUTES 转换器

$rectorConfig->sets([
    DoctrineSetList::ANNOTATIONS_TO_ATTRIBUTES,
    DoctrineSetList::GEDMO_ANNOTATIONS_TO_ATTRIBUTES,
    ApiPlatformSetList::ANNOTATIONS_TO_ATTRIBUTES,
    SymfonySetList::ANNOTATIONS_TO_ATTRIBUTES,
    SensiolabsSetList::ANNOTATIONS_TO_ATTRIBUTES,
]);

执行 Rector

可以使用以下命令运行 Rector

vendor/bin/rector process src

为了简化,您还可以在 composer.json 文件中添加 rector 命令

{
  ...
  "scripts": {
    "rector": "vendor/bin/rector"
  }
}

现在,您可以使用以下命令执行 rector 脚本

composer rector process src