第五章解答
- 1. 第 5 章解答 PHP 6 與 MySQL 基礎學習教室
1.if、else if 或 else 成立時若有兩行以上的敘述,是否要加上大括弧?
解答:
.if、else if 或 else 成立時若有兩行以上的敘述,請加上大括弧。
2.當使用者輸入年齡後,請使用 select case 設計臺灣電影分級制度分析網頁。
解答:
詳見 switch_year.php 及 switch_year.htm 兩個檔案。
傳送資料:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>電影分級</title>
</head>
<body>
<form action="switch_year.php" method="post" name="form1">
請輸入出生的西元年份:
<input type="text" name="years" onkeyup="value=value.replace(/[^0-9]/g,'');">
<input type="submit" value="ok" /><br></form>
</body>
</html>
接收資料:
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>電影分級制度:switch 接收</title></head><body>
<?
ini_set("date.timezone","Asia/Taipei");
$a=date("Y")-$_POST["years"];
$b=floor($a/6);
if ($b>4) $b=3;
switch ($b)
{
case 3:
echo "限制級"."<br>";
// break;
第1頁
- 2. 第 5 章解答 PHP 6 與 MySQL 基礎學習教室
case 2:
echo "輔導級"."<br>";;
//break;
case 1:
echo "保護級"."<br>";;
//break;
default:
echo "普遍級"."<br>";;
//break;
}
?></body></html>
3.若要判斷$a 是否等於 20,要輸入「$a==20」還是「$a=20」呢?
解答:
若要判斷左右兩邊是否相等,例如「判斷$a 是否等於 20」,必須要用 「==」(兩
個=),代表「若左右兩邊相等,傳回 true,若不相等,傳回 false」,如果使用
「=」(一個=),代表「右邊的值丟給左邊」,結果會是不同的。
4.switch case 內的 break 有什麼作用?
解答:
break 的目的是「跳出 switch」。
5.switch case 內的 default 區塊有什麼作用?
解答:
使用者輸入的資料不合乎我們原先的預期而當找不到相對應的 case 項目時,
會執行 dafault 這個區塊,如果沒有 default 這一個區塊,當資料若找不到可對
應的 case 後,就什麼事情都不做。
6.and 左右只有一個條件成立,結果為成立還是不成立?
解答:
and 的使用方式像「$a and $b」,而如果$a 與$b 都為真,那就會傳回真,否則傳
回假。所以若只有一個條件成立,則最後結果為不成立。
第2頁
- 3. 第 5 章解答 PHP 6 與 MySQL 基礎學習教室
7.and 左右兩邊的條件如果都成立,結果為成立還是不成立?
解答:
and 的使用方式像「$a and $b」,而如果$a 與$b 都為真,那就會傳回真,否則傳
回假。所以若兩邊條件成立,則最後結果為成立。
8.or 左右只有一個條件成立,結果為成立還是不成立?
解答:
or 的使用方式為「$a or $b」,如果$a 與$b 其中一個為真,那就會傳回真,否則
傳回假。所以一個條件成立,結果為成立。
9.or 左右兩邊的條件如果都成立,結果為成立還是不成立?
解答:
or 的使用方式為「$a or $b」,如果$a 與$b 其中一個為真,那就會傳回真,否則
傳回假。所以兩個條件成立,結果為成立。
10.xor 左右只有一個條件成立,結果為成立還是不成立?
解答:
xor 的使用方式為「$a xor $b」。如果$a 與$b 若均為真或為假,那就會傳回假,
否則傳回真。只有一個條件成立,結果為成立。
11.xor 左右兩邊的條件如果都成立,結果為成立還是不成立?
解答:
xor 的使用方式為「$a xor $b」。如果$a 與$b 若均為真或為假,那就會傳回假,
否則傳回真。兩個成立均成立,xor 結果為不成立。
第3頁