PHP/enum: Difference between revisions
from HTYP, the free directory anyone can edit if they can prove to me that they're not a spambot
No edit summary |
No edit summary |
||
| Line 3: | Line 3: | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
! kind of thing || name || returns || defined in | ! kind of thing || name || args || returns || defined in | ||
|- | |- | ||
| static function || [https://www.php.net/manual/en/unitenum.cases.php cases]() || array || UnitEnum | | static function || [https://www.php.net/manual/en/unitenum.cases.php cases] || <syntaxhighlight lang=php inline>()</syntaxhighlight> || array || UnitEnum | ||
|- | |- | ||
| static function final || [https://www.php.net/manual/en/backedenum.tryfrom.php tryFrom](int | | static function final || [https://www.php.net/manual/en/backedenum.tryfrom.php tryFrom] || <syntaxhighlight lang=php inline>(int|string $value)</syntaxhighlight> || ?static || BackedEnum | ||
|- | |- | ||
| static function final || from(int | | static function final || [https://www.php.net/manual/en/backedenum.from.php from] || <syntaxhighlight lang=php inline>(int|string $value)</syntaxhighlight> || static || BackedEnum | ||
|- | |- | ||
| dynamic property || $name || string || (UnitEnum) | | dynamic property || $name || || string || (UnitEnum) | ||
|- | |- | ||
| dynamic property || $value || int or string || (BackedEnum) | | dynamic property || $value || || int or string || (BackedEnum) | ||
|} | |} | ||
==Documentation== | ==Documentation== | ||
Revision as of 14:56, 25 April 2023
|
PHP enum support
|
{{#set: page title=PHP enum support }}
Methods
| kind of thing | name | args | returns | defined in |
|---|---|---|---|---|
| static function | cases | () |
array | UnitEnum |
| static function final | tryFrom | (int|string $value) |
?static | BackedEnum |
| static function final | from | (int|string $value) |
static | BackedEnum |
| dynamic property | $name | string | (UnitEnum) | |
| dynamic property | $value | int or string | (BackedEnum) |
Documentation
official
- Enumerations:
- Basic:
- Backed:
3rd party
Sample Code
To get a UnitEnum enum from a case name (equivalent to from()/tryFrom()):
- constant("<enum name>::{$value}")
Tests
- is an
enuman object (is_object)? [YES] - is an
enumseen asis_a UnitEnum? [YES] - is an
enumaninstanceof UnitEnum? [YES] - is an
enumaninstanceof enum? [no]
