Limit your variables with pre-selected values setup by using new scalar type of enum
and by as cool and fun as JAVA or C# developers!
Enumerations are built on top of classes and objects. That means, except where otherwise noted, “how would Enums behave in situation X” can be answered “the same as any other object instance.” They would, for example, pass an object
type check. Enum names are case-insensitive, but subject to the same caveat about autoloading on case-sensitive file systems that already applies to classes generally. Case names are internally implemented as class constants, and thus are case-sensitive.
Basic enumerations
enum Suit {
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
Usage:
function pick_a_card(Suit $suit) { ... }
$val = Suit::Diamonds;
pick_a_card($val); // OK
pick_a_card(Suit::Clubs); // OK
pick_a_card('Spades'); // TypeError: pick_a_card(): Argument #1 ($suit) must be of type Suit, string given
More about PHP 8.1
Read about all PHP 8.1 features and changes in here.