erasys/openapi-php

PHP 的 Open API 3.0 构建器和验证库,帮助您编写有效的规范。

4.0.0 2023-11-03 09:41 UTC

This package is auto-updated.

Last update: 2024-09-06 12:17:09 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

PHP 的 Open API 3.0 构建器和验证库,帮助您编写有效的规范。

本项目符合 PSR-1PSR-2PSR-4 标准。如果发现不符合标准,请通过 pull request 发送补丁。

特性

  • 完整文档的对象化表示 Open API 3.0+ 规范,并提供辅助方法来编写有效的文档。
  • 支持 Illuminate (Laravel) 的 JsonableArrayable
  • 以纯 PHP 数组、纯对象、JSON 或 YAML 格式生成规范。
  • 验证 Open API 文档是否符合 Open API 3.0.x JSON Schema。

安装

通过 Composer

$ composer require erasys/openapi-php

通过 Git

$ git clone https://github.com/erasys/openapi-php.git

使用方法

基本示例

<?php

use erasys\OpenApi\Spec\v3 as OASv3;

$doc = new OASv3\Document(
    new OASv3\Info('My API', '1.0.0', 'My API description'),
    [
        '/foo/bar' => new OASv3\PathItem(
            [
                'get' => new OASv3\Operation(
                    [
                        '200' => new OASv3\Response('Successful response.'),
                        'default' => new OASv3\Response('Default error response.'),
                    ]
                ),
            ]
        ),
    ]
);

$yaml = $doc->toYaml();
$json = $doc->toJson();
$arr  = $doc->toArray();
$obj  = $doc->toObject();

测试

$ composer test

$ vendor/bin/phpunit
$ vendor/bin/phpcs

贡献

请参阅 CONTRIBUTING 获取详细信息。

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 获取更多信息。