if (expr) statement
expr 為 TRUE 執行 statement。多行用大括號包裹:
if ($a > $b) {
print "a is bigger than b";
}
if ($a > $b) {
print "a is bigger than b";
} else {
print "a is NOT bigger than b";
}
可串接多個條件,第一個 TRUE 的區塊執行:
if ($a == 5) {
print "a equals 5";
} elseif ($a == 6) {
print "a equals 6";
} else {
print "a is neither 5 nor 6";
}
替代語法(適合模板混編):
if ($a == 5):
print "a equals 5";
elseif ($a == 6):
print "a equals 6";
else:
print "a is neither 5 nor 6";
endif;
while (expr) statement
每次迴圈開始檢查 expr。替代語法:
while ($i <= 10):
print $i;
$i++;
endwhile;
至少執行一次,結束時檢查條件:
$i = 0;
do {
print $i;
} while ($i > 0); // 僅執行一次
for (expr1; expr2; expr3) statement
expr1:初始化,迴圈開始前執行一次expr2:每次迴圈前檢查,TRUE 繼續expr3:每次迴圈結束執行// 經典寫法
for ($i = 1; $i <= 10; $i++) {
print $i;
}
// 靈活運用空表達式
for ($i = 1; ; $i++) {
if ($i > 10) break;
print $i;
}
對同一變數做多值比較,語意更清晰:
switch ($i) {
case 0: print "i equals 0"; break;
case 1: print "i equals 1"; break;
case 2: print "i equals 2"; break;
}
require('file'):編譯期引入,不可放在迴圈中動態載入不同檔案include('file'):執行期引入,可在迴圈中動態載入function foo($arg_1, $arg_2, ..., $arg_n) {
echo "Example function.";
return $retval;
}