gpt4 book ai didi

PHP:如何在 Switch 语句中对多个案例使用相同的逻辑

转载 作者:行者123 更新时间:2023-12-03 23:26:28 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





PHP switch case more than one value in the case

(5 个回答)


去年关闭。




我有一个函数可以根据输入的值返回响应。代码是这样的

$a = 5;
switch ($a) {
case 1: $b = 1;
break;
case 2 || 3 || 4: $b = 2;
break;
case 5: $b = 3;
break;
}
return $b;
这会返回值 2而不是 3因为它可以在代码中清楚地看到。这是怎么发生的?

最佳答案

您使用的案例错误。您不能使用 ||在案例中间说 2 或 3 或 4,但您可以一个接一个地列出多个案例,而无需 break之间执行相同的操作。

$a = 5;

switch ($a) {
case 1:
$b = 1;
break;
case 2:
case 3:
case 4:
$b = 2;
break;
case 5:
$b = 3;
break;
}

return $b;
您的原始代码发生的情况是您得到 case 2 || 3 || 4相当于 case (2 || 3 || 4): ,变成 case true: . ||运算符比较 2、3 和 4 的真实性——它们都是非零值,因此表达式的计算结果为真。
您还应该注意 $b$a 时未定义不是 1、2、3、4 或 5 之一。因此你应该有一个 default在 switch 语句中使用 case,或者声明 $b在切换之前。

关于PHP:如何在 Switch 语句中对多个案例使用相同的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64365790/

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