alireza-h/php-openapi
最新稳定版本:0.3.0
Composer 安装命令:
composer require alireza-h/php-openapi
包简介
PHP Open Api Generator
README 文档
README
Installation
Standalone
-
Clone project
-
Run
composer update -
Check
src/Documentdirectory as sample and create your ownOpenApiOperationGeneratorandOpenApiDocumentGeneratorOpenApiOperationGeneratoris responsible to generate Open API Operations andOpenApiDocumentGeneratoris responsible to generate Open API json document. Each public method ofOpenApiOperationGeneratorgenerates one Open API Operation (Using reflection). -
Run
php -S localhost:8001in project root directory- Open
http://loclahost:8001in your browser for Open API json document - Open
http://loclahost:8001?swaggerin your browser for Open API Swagger UI
- Open
Dependency of existing project
-
Install package
composer require alireza-h/php-openapi
-
Check
src/Documentdirectory as sample and create your ownOpenApiOperationGeneratorandOpenApiDocumentGeneratorInstead of using
OpenApiDocumentGenerator, you can create your ownOpenApiBuilderobject and addOpenApiOperationto builder object.OpenApiBuilder::openapi() ->info( [ 'title' => 'API', 'description' => 'API Description', 'version' => '1.0.0' ] ) ->server( [ 'url' => '{scheme}://{host}/{base_path}', 'variables' => [ 'scheme' => [ 'enum' => [ 'http', 'https' ], 'default' => 'http' ], 'host' => [ 'default' => 'localhost:8000' ], 'base_path' => [ 'default' => 'api' ], ] ] ) ->component( 'securitySchemes', 'bearerAuth', [ 'type' => 'http', 'scheme' => 'bearer', 'bearerFormat' => 'JWT', ] ) ->security( [ 'bearerAuth' => [] ] ) ->operation( OpenApiOperation::post('/auth/signup') ->tags(['Auth']) ->summary('Signup') ->description('Signup description') ->requestBody( OpenApiRequestBody::create() ->properties( [ [ 'name' => 'email', 'type' => 'string', 'format' => 'email', 'example' => 'email@example.com', 'description' => 'Email', ], ... ] ) ->mediaTypeMultipartFormData() ) ->response( OpenApiResponse::create() ->example( [ 'data' => [], 'message' => null ] ) ) ) ->operation( OpenApiOperation::put('/auth/confirm') ->tags(['Auth']) ->summary('ConfirmSignup') ->description('Confirm signup description') ->requestBody( OpenApiRequestBody::create() ->properties( [ [ 'name' => 'email', 'type' => 'string', 'format' => 'email', 'example' => 'email@example.com', 'description' => 'Email', ], [ 'name' => 'code', 'example' => 12345, ] ] ) ->mediaTypeXWwwFormUrlencoded() ) ->response( OpenApiResponse::create() ->example( [ 'data' => [], 'message' => null ] ) ) ) ->docs();
-
Create your own custom route to serve Open API json document and swagger UI
统计信息
- 总下载量: 23
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-01-03

