Skip to content

Commit

Permalink
- fix error with string backed enum with numeric string
Browse files Browse the repository at this point in the history
  • Loading branch information
trippo committed Oct 7, 2023
1 parent 301720d commit d12db0c
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions src/Enum.php
Original file line number Diff line number Diff line change
Expand Up @@ -61,11 +61,13 @@ function ($value) use ($class) {
if ($value instanceof UnitEnum) {
$parsedValue = $value;
} else {
if (is_numeric($value)) {
$value = intval($value);
}
$rEnum = new \ReflectionEnum($class);

$parsedValue = $class::tryFrom($value);
if ($rEnum->getBackingType()?->getName() === 'string') {
$parsedValue = $class::tryFrom((string)$value);
} else {
$parsedValue = $class::tryFrom((int)$value);
}
}
if (method_exists($class, $this->property)
|| in_array('Datomatic\LaravelEnumHelper\LaravelEnumHelper', class_uses($class))) {
Expand Down

0 comments on commit d12db0c

Please sign in to comment.