# PHP 條件句(elseif. switch.)、迴圈(for while do...while) date寫法 ###### tags: `PHP` :::info http://www.php.net/函式名稱 (可查詢函式內容) ::: --- ==練習elseif與date語法:== ```php= <?php $a=date("w"); if ($a=='1') echo'今天星期一,猴子穿新衣'; elseif ($a='2') echo'今天星期二,猴子肚子餓'; elseif ($a='3') echo'今天星期三,猴子去爬山'; elseif ($a='4') echo'今天星期四,猴子去考試'; elseif ($a='5') echo '今天星期五,猴子去跳舞'; elseif ($a='6') echo '今天星期六。猴子去斗六'; else echo '今天星期七,猴子森氣氣'; ?> ``` ## 變數 date ![](https://i.imgur.com/Fjfg3LS.png) 練習: ```php= echo date("Y/M/D h:i:s") ``` --- ## switch 語法 * 特點:抓取資料次數較if少,加速抓取資料減低電腦運作負擔 * break的作用是跳出switch區塊,如果沒寫break程式會繼續往下執行 練習:用switch改寫if的用法 ```php= <?php switch($a=date("w")){ case 1: echo'今天星期一,猴子穿新衣'; break; case 2: echo'今天星期二,猴子肚子餓'; break; case 3: echo'今天星期三,猴子去爬山'; break; case 4: echo'今天星期四,猴子去考試'; break; case 5: echo'今天星期五,猴子去跳舞'; break; case 6: echo'今天星期六,猴子去斗六'; break; default: echo'今天星期七,猴子森氣氣'; break; } ?> ``` 常見錯誤: ![](https://i.imgur.com/YsKmZpX.png) >解法:[color=#445bed] >把$price>2500順序調換到第一個case就能執行正確判斷 --- ## for迴圈 ==迴圈練習== 找出1~200之間。可以被7及9整除的數字 (63 126 189) ```php= <?php //寫法一 for ($i=63; $i<=200; $i+=63){ echo $i."<br>"; } //寫法二 for ($i=1;$i<=200;$i++){ if($i%7==0&&$i%9==0){ echo $i."<br>"; } } //寫法三 for($i=1;$i<=200;$i++){ switch ($i%7==0&&$i%9==0){ case 63: echo"$i"."<br>"; break; } } ?> ``` --- ## while(先測試迴圈) / do...while(後測試迴圈) ==迴圈練習== 設計抽彩票程式,每次抽獎金額為0~10元不等,可以一直抽下去,直到抽中0元就不能再抽。 並將每次抽到的金額還有累計的金額做輸出。 >隨機產生亂數 >rand(min,max)|ex:rand(0,10) > Output: 抽中3元,累計3元 抽中5元,累計8元 . . . 抽中0元,累計N元 ```php= 抽彩票囉~ <br> <?php $total=0; do{ $lottery=rand(0,10); $total+=$lottery; //$total=$total+$lottery echo"抽中".$lottery. "元,累計".$total. "元。<br>"; }while($lottery!=0); ?> ```