【发布时间】:2017-10-25 06:29:08
【问题描述】:
我有一个 switch 语句,可以根据学生获得的分数显示成绩。
分数 >= 80 的学生获得 A
分数 >=70 的学生获得 B
分数 >= 50 的学生获得 C
分数 >= 30 的学生获得 D
分数 >= 0 的学生获得 E
问题是当点为0时,它返回A而不是E。这是switch语句。
$point = 0;
switch ($point) {
case $point >= 80:
echo 'A';
break;
case $point >= 70:
echo 'B';
break;
case $point >= 50:
return 'C';
break;
case $point >= 30:
echo 'D';
break;
case $point >= 0:
echo 'E';
break;
default:
echo 'F';
break;
}
【问题讨论】:
-
如果你
var_dump($point >= 80)它的false和false被认为是0所以第一个大小写匹配不管逻辑条件。
标签: php switch-statement