作者aquarianboy (高 见龙)
看板PHP
标题Re: [请益]请问switch/case问题
时间Wed Nov 10 14:14:03 2010
※ 引述《jcinlo (印罗)》之铭言:
: <center>
: <?php
: switch($score)
: {
: case ($_POST['score']>=85 and $_POST['score']<=100):
: echo "超级优秀";
: break;
: case($_POST['score']>=60 and $_POST['score']<85):
: echo "还好啦";
: break;
: case($_POST['score']>=0 and $_POST['score']<=59):
: echo "要加油罗";
: break;
: default:
: echo "您打错了";
: }
: ?>
其实case里并不是不能放条件判断句
而是变成在switch的地方就不是放要比对的$score了
直接在switch里放个true,应该就会正常执行了
switch(
true)
{
case ($_POST['score']>=85 and $_POST['score']<=100):
echo "超级优秀";
break;
case($_POST['score']>=60 and $_POST['score']<85):
echo "还好啦";
break;
case($_POST['score']>=0 and $_POST['score']<=59):
echo "要加油罗";
break;
default:
echo "您打错了";
}
供你参考 :)
--
http://www.eddie.com.tw/
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.32.5.183
※ 编辑: aquarianboy 来自: 114.32.5.183 (11/10 14:14)
1F:推 Jerr:实用 11/10 15:05
2F:推 LewisHamiltn:温馨 11/10 15:08
3F:→ MOONRAKER:这种语意(symantics)多奇怪 何必硬把case当if...else用 11/10 15:08
4F:→ aquarianboy:其实是没必要,只是依原po的写法,只要改一下就能动了 11/10 15:10
5F:→ Kelunyang:原来case可以这样用O.O 11/10 15:11
6F:→ aquarianboy:只是在原文的推文里有提到case不能用条件句,但事实上 11/10 15:12
7F:→ aquarianboy:是可以的 :) 11/10 15:12
8F:推 jcinlo:感谢aquarianboy大大解惑 11/10 15:24
9F:推 linhomeyeu:我认为还是不要推荐这种诡异的用法吧 11/10 16:05
10F:→ linhomeyeu:应该可以加注说 不建议这样用~ 11/10 16:06
11F:→ aquarianboy:是的,不建议这样用 :) 11/10 16:42
12F:推 mesak:以前我写vb可以这样用 但是 上php就没看过有人这样用以为不 11/10 20:59
13F:→ mesak:行这样用,在PHP文件也没看过有这种写法 11/10 21:00
14F:→ mesak:学习了 11/10 21:00
15F:→ MOONRAKER:php的确不行这样用 这样写只是一种模拟 11/11 17:49
16F:→ MOONRAKER:跟VB那种无敌铁金刚式的select case差别还很远 11/11 17:49
17F:→ mesak:VB 叫做无脑条件式吧..... 11/16 00:51