在 PHP 中,match
是一个新的表达式,自 PHP 8.0 起可用。它提供了一种简洁、易读的方式来处理多个条件。match
表达式与 switch
语句类似,但更简洁。
以下是 match
表达式的基本语法:
$result = match ($variable) {
value1 => expression1,
value2 => expression2,
...
default => default_expression
};
这里是一个实际的例子:
function getDayName(int $dayNumber): string {
return match ($dayNumber) {
1 => "Monday",
2 => "Tuesday",
3 => "Wednesday",
4 => "Thursday",
5 => "Friday",
6 => "Saturday",
7 => "Sunday",
default => throw new Exception("Invalid day number"),
};
}
echo getDayName(1); // 输出 "Monday"
在这个例子中,我们定义了一个名为 getDayName
的函数,该函数接受一个整数参数 $dayNumber
。然后,我们使用 match
表达式根据 $dayNumber
的值返回相应的星期几名称。如果没有匹配到任何值,将抛出一个异常。
注意:default
分支是可选的,但建议使用,以防传入无效的值。