gpt4 book ai didi

php - 如何使用匹配表达式而不是开关表达式

转载 作者:行者123 更新时间:2023-12-03 21:12:22 24 4
gpt4 key购买 nike

我们可以在 PHP 8 中使用 match 表达式而不是 switch case。
如何为以下 switch case 正确编写匹配表达式?

switch($statusCode) {
case 200:
case 300:
$message = null;
break;
case 400:
$message = 'not found';
break;
case 500:
$message = 'server error';
break;
default:
$message = 'unknown status code';
break;
}

最佳答案

有一件重要的事情必须记住match .是类型敏感 ,而不是 switch陈述。因此,正确地转换变量非常重要。在 HTTP 代码的情况下,它通常以字符串格式发送,例如"400" .
当我们不知道它时,它可能会在调试过程中带来很多痛苦。如 $statusCode是一个字符串,默认选项将始终被调用。我接受的答案的修改版本:

$message = match((int) $statusCode) {
200, 300 => null,
400 => 'not found',
500 => 'server error',
default => 'unknown status code',
};

关于php - 如何使用匹配表达式而不是开关表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62983592/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com