Concept Flow - Enums in PHP
Define enum with cases
Use enum value in code
Compare or switch on enum
Get enum name or value
End
This flow shows how you define an enum, use its values, compare or switch on them, and access their names or values.
<?php
enum Status {
case Pending;
case Approved;
case Rejected;
}
$current = Status::Approved;
if ($current === Status::Approved) {
echo "Approved!";
}
?>| Step | Action | Evaluation | Result |
|---|---|---|---|
| 1 | Define enum Status with cases Pending, Approved, Rejected | N/A | Enum Status created |
| 2 | Assign $current = Status::Approved | N/A | $current holds Status::Approved |
| 3 | Check if $current === Status::Approved | $current === Status::Approved | True |
| 4 | Execute echo "Approved!" | Print output | Approved! |
| 5 | End of script | N/A | Script ends |
| Variable | Start | After Step 2 | After Step 5 |
|---|---|---|---|
| $current | undefined | Status::Approved | Status::Approved |
PHP Enums let you define named cases as a type. Use enum cases with EnumName::CaseName. Compare enum cases with === for exact match. Enums can be pure or backed by values. Use enums to make code clearer and safer.