我得到的结果与我对以下任务的预期不同

问题描述 投票:0回答:1

当我使用0作为输入时,它输出100到200之间。使用其他值它可以正常工作。有人能解释我为什么会这样吗?

http://prntscr.com/n7fzcy

<?php

$num = intval(readline());

switch ($num) {
    case $num < 100:
        echo "Less than 100";
        break;
    case $num >= 100 && $num <= 200:
        echo "Between 100 and 200";
        break;
    default:
        echo "Greater than 200";
}
php switch-statement condition
1个回答
1
投票

您不能在switch case语句中使用任何逻辑运算符<,>,!=,=,== ....

使用简单的if else条件:

   $num = intval(readline());

    if($num < 100){
        echo "Less than 100";
    }else if($num >= 100 && $num <= 200){
        echo "Between 100 and 200";
    }else{
        echo "Greater than 200";
    }
© www.soinside.com 2019 - 2024. All rights reserved.