switch(1){
case 1: print 1; // prints 1 (as expected)
case 2: print 2; // prints 2 (even though match is not equal?)
case 3: print 3; // prints 3 (even though match is not equal?)
}
break
我知道如果在每个 case 表达式匹配后不使用,大多数编程语言都会继续执行每个语句。但是我很困惑为什么大多数语言在第二个和第三个 case 语句上执行一个 case 块作为成功匹配。
澄清一下:我知道 switch 语句的行为,但我不明白即使没有找到匹配项,将 case 块/语句作为成功匹配执行也是有意义的逻辑。
更新:我刚刚更新了这个问题以反映大多数编程语言,而不仅仅是 PHP。