作者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)
推 Jerr:實用 11/10 15:05
推 LewisHamiltn:溫馨 11/10 15:08
→ MOONRAKER:這種語意(symantics)多奇怪 何必硬把case當if...else用 11/10 15:08
→ aquarianboy:其實是沒必要,只是依原po的寫法,只要改一下就能動了 11/10 15:10
→ Kelunyang:原來case可以這樣用O.O 11/10 15:11
→ aquarianboy:只是在原文的推文裡有提到case不能用條件句,但事實上 11/10 15:12
→ aquarianboy:是可以的 :) 11/10 15:12
推 jcinlo:感謝aquarianboy大大解惑 11/10 15:24
推 linhomeyeu:我認為還是不要推薦這種詭異的用法吧 11/10 16:05
→ linhomeyeu:應該可以加註說 不建議這樣用~ 11/10 16:06
→ aquarianboy:是的,不建議這樣用 :) 11/10 16:42
推 mesak:以前我寫vb可以這樣用 但是 上php就沒看過有人這樣用以為不 11/10 20:59
→ mesak:行這樣用,在PHP文件也沒看過有這種寫法 11/10 21:00
→ mesak:學習了 11/10 21:00
→ MOONRAKER:php的確不行這樣用 這樣寫只是一種模擬 11/11 17:49
→ MOONRAKER:跟VB那種無敵鐵金剛式的select case差別還很遠 11/11 17:49
→ mesak:VB 叫做無腦條件式吧..... 11/16 00:51