Generate PHP class definition that extends Enum class from file(yaml, json).
composer require genkiroid/enum-generatorGenerate to STDOUT.
enum-generator --in enums.yamlGenerate to files. (Specify output dir.)
enum-generator --in enums.yaml --out /tmp/enums/Generate to files. (Overwrite.)
enum-generator --in enums.yaml --out /tmp/enums/ --forceSpecify a namespace
enum-generator --in enums.yaml --namespace="My/Namespace"---
- User:
state:
active: 0
inactive: 1
- Shop:
state:
active: 0
inactive: 1[
{
"User": {
"state": {
"active": 0,
"inactive": 1
}
}
},
{
"Shop": {
"state": {
"active": 0,
"inactive": 1
}
}
}
]STDOUT.
<?php
class UserState extends Enum
{
const ACTIVE = 0;
const INACTIVE = 1;
}
<?php
class ShopState extends Enum
{
const ACTIVE = 0;
const INACTIVE = 1;
}Files.
UserState.php
ShopState.phpYou can use genkiroid/enum_exporter to create input file from existing Ruby on Rails application.