if..else 循環有三種結構
第一種是只有用到 if 條件,當作單純的判斷,解釋成 "若發生了某事則怎樣處理",語法如下:
- if (expr) {
- statement
- }
其中的 expr 為判斷的條件,通常都是用邏輯運算符號 (logical operators) 當判斷的條件,而 statement 為符合條件的執行部分程序,若程序只有一行,可以省略大括號 {}.
范例:本例省略大括號,代碼如下:
- <?php
- if (date("D") == "Sat") echo "周末了,狂歡去";
- ?>
范例:本例的執行部分有三行,不可省略大括號.
- <?php
- if (file_exists("/usr/local/lib/php3.ini")) {
- echo "以下是 PHP3 的配置文件<p><pre>/n";
- readfile("/usr/local/lib/php3.ini");
- echo "</pre>/n";
- }
- ?>
- if (expr) {
- statement1
- } else {
- statement2
- }
范例:上面的例子來修改成更完整的處理,其中的 else 由于只有一行執行的指令,因此不用加上大括號,代碼如下:
- <?php
- $f="/usr/local/lib/php3.ini";
- if (file_exists($f)) {
- echo "以下是 PHP5 的配置文件<p><pre>/n";
- readfile($f);
- echo "</pre>/n";
- } else echo "很抱歉,找不到 $f";
- ?>
第三種就是遞歸的 if..else 循環,通常用在多種決策判斷時,它將數個 if..else 拿來合并運用處理,直接看下面的例子:
- <?php
- if ($a > $b) {
- echo "a 比 b 大";
- } elseif ($a == $b) {
- echo "a 等于 b";
- } else {
- echo "a 比 b 小";
- }
- ?>
上例只用二層的 if..else 循環,用來比較 a 和 b 兩個變量,實際要使用這種遞歸 if..else 循環時,請小心使用,因為太多層的循環容易使設計的邏輯出問題,或者少打了大括號等,都會造成程序出現莫名其妙的問題.
新聞熱點
疑難解答