<?php
//纯枚举pure enum,没有绑定具体值,每个case就是唯一实例
enum Suit{
case H;
case D;
case C;
case S;
}
// echo Suit::H;
//$suit = Suit::cases();
//$val = Suit::D;
//print_r($val);
// echo $val instanceof Suit;
function getStatusColor(Suit $suit): string {
return match($suit) {
Suit::H => 'orange',
Suit::D => 'blue',
Suit::C => 'green',
Suit::S => 'red'
};
}
$a= getStatusColor(Suit::C);
print_r($a);
enum Color {
case PENDING;
case PROCESSING;
case SHIPPED;
function getColor(): string {
return match($this) {
self::PENDING => '橙色',
self::PROCESSING => '蓝色',
self::SHIPPED => '绿色'
};
}
}
echo Color::PENDING->getColor(); // 输出:橙色
function aa (int $a) {}
echo "<br/>";
//回溯枚举backend enum带有标量值的枚举,可以关联字符串或整数
enum Status: string {
case PENDING = 'pending';
case ACTIVE = 'active';
}
$sq = Status::ACTIVE;
print_r($sq);
echo $sq->name."=".$sq->value;
php8新增函数
zwm_yy2025-11-21 9:30