PHP code example of genxoft / swagger-php-module
1. Go to this page and download the library: Download genxoft/swagger-php-module library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
genxoft / swagger-php-module example snippets -swagger.global.php
return [
'swagger_php' => [
'scanDirs' => [
__DIR__ . '/module'
],
'jsonUrl' => '/api-oas-docs/json',
],
'routes' => [
'swagger_php.route.json' => [
'path' => '/api-oas-docs/json',
'middleware' => [
\Genxoft\SwaggerPhpModule\Handler\JsonAction::class,
],
'allowed_methods' => ['GET'],
],
'swagger_php.route.ui' => [
'path' => '/api-oas-docs/ui',
'middleware' => [
\Genxoft\SwaggerPhpModule\Handler\UiAction::class,
],
'allowed_methods' => ['GET'],
],
],
];
/**
* @OA\Info(
* version="1.0",
* title="Application API",
* description="Server - Mobile app API",
* @OA\Contact(
* name="John Smith",
* email="[email protected] ",
* ),
* ),
* @OA\Server(
* url="https://example.com/api",
* description="main server",
* )
* @OA\Server(
* url="https://dev.example.com/api",
* description="dev server",
* )
*/
...
/**
* @OA\Get(path="/",
* summary="Handshake",
* tags={"handshake"},
* @OA\Parameter(
* name="access-token",
* in="header",
* OA\MediaType(
* mediaType="application/json",
* @OA\Schema(ref="#/components/schemas/Hello"),
* ),
* ),
* )
*/
class HelloHandler implements RequestHandlerInterface
{
...
/**
*@OA\Schema(
* schema="Hello",
* @OA\Property(
* property="message",
* type="string",
* description="Text message"
* ),
* @OA\Property(
* property="time",
* type="integer",
* description="Server current Unix time"
* ),
* @OA\Property(
* property="date",
* type="string",
* format="date-time",
* description="Server current date time"
* )
*)
*/
class HelloModel
{
...
bash
php composer.phar
bash
composer
"genxoft/php-swagger-module" : "*"