<?phpfor($i=0; $i<20; $i++){$a = $i;switch($a)
{
   case ">14":
   echo "OK<br>";
   break;
   
   case "<7":
   echo "NG<br>";
   break;
   
   default:
   echo "$i<br>";
   break;
}
}
?>
如上,我希望大于值大于14,就输出OK,小于7就输出NG,其他的输出数值。
但实际结果,除了值为0是,输出OK,其他全部输出数值。这怎么回事?

解决方案 »

  1.   

    没人回答?我怀疑Case中不能进行数值比较,请哪位大哥说明一下呀
      

  2.   

    不是说了吗?你的变量类型没有对上
    数值的比较怎能用字符串的引号呢?另外,不要在case后面作判断,应该在switch里面判断
      

  3.   

    <?phpfor($i=0; $i<20; $i++){$a = $i;switch($a)
    {
    case ($a>14):
    echo "OK<br>";
    break;case ($a<7):
    echo "NG<br>";
    break;default:
    echo "$i<br>";
    break;
    }
    }
    ?>
      

  4.   

    snmr_com(麒麟厍人) 
    你的方法有误
    switch($a)
    {
    case ($a>14):
    这个相当于if($a==($a>14))应该是switch(true)