php-openapi
php-openapi copied to clipboard
Add a way to create schemas
Hi,
The library allows to create paths, but apparently doesn't provide any way to add schemas.
Doing something like:
$objOpenapi->components->schemas['foo'] = new Schema([ 'type' => Type::INTEGER, ]);
gives a warning and the element is not created: PHP Notice: Indirect modification of overloaded property cebe\openapi\spec\Components::$schemas has no effect in G:\test.php on line 119
Am I missing something ?
If not, it would be nice if we could create dynamically elements using this library.
Thank in advance
You can currently do it like this:
$schemas = []; // or $schemas = $objOpenapi->components->schemas;
$schemas['foo'] = new Schema([ 'type' => Type::INTEGER, ]);
// add more here ...
$objOpenapi->components->schemas = $schemas;
This library was initally created to only read OpenAPI files, writing was added later so the programming API is not optimal.