if
語句用於根據條件執行代碼塊。else if
和else
則用於處理多個條件和默認情況:
$age = 20;
if ($age < 18) {
echo "未成年";
} elseif ($age >= 18 && $age < 65) {
echo "成年";
} else {
echo "老年";
}
三元運算子是一個簡潔的條件運算符,語法為condition ? expr1 : expr2
:
$age = 20;
$status = ($age >= 18) ? "成年" : "未成年";
echo $status; // 輸出:成年
switch
語句用於在多個可能值中進行選擇,類似於多個if
語句:
$day = "Monday";
switch ($day) {
case "Monday":
echo "今天是星期一";
break;
case "Tuesday":
echo "今天是星期二";
break;
case "Wednesday":
echo "今天是星期三";
break;
default:
echo "不是星期一、二或三";
break;
}
for
迴圈用於執行固定次數的迭代。語法為:for (initialization; condition; increment) { ... }
:
for ($i = 0; $i < 10; $i++) {
echo $i . " ";
}
foreach
迴圈有兩種基本語法:
$array = array(1, 2, 3, 4, 5);
foreach ($array as $value) {
echo $value . " "; // 輸出:1 2 3 4 5
}
$assocArray = array(
"name" => "Alice",
"age" => 30,
"email" => "alice@example.com"
);
foreach ($assocArray as $key => $value) {
echo "$key: $value\\\\n";
/*
輸出:
name: Alice
age: 30
email: alice@example.com
*/
}
foreach
也可以用於遍歷對象的屬性:
class Person {
public $name = "Alice";
public $age = 30;
public $email = "alice@example.com";
}
$person = new Person();
foreach ($person as $property => $value) {
echo "$property: $value\\\\n";
/*
輸出:
name: Alice
age: 30
email: alice@example.com
*/
}
while
迴圈用於在條件為真時重複執行代碼塊。語法為:while (condition) { ... }
:
$i = 0;
while ($i < 10) {
echo $i . " ";
$i++;
}
以下是一個簡單的範例,演示如何使用 do-while
迴圈:
$i = 0;
do {
echo $i . " ";
$i++;
} while ($i < 10);
循環可以嵌套在其他循環內部,無論是for
、while
還是do-while
:
for ($i = 0; $i < 5; $i++) {
for ($j = 0; $j < 5; $j++) {
echo "($i, $j) ";
}
echo "\\\\n";
}
PHP提供了幾個控制循環的語句:break
、continue
和goto
。
break
語句用於立即退出循環:
for ($i = 0; $i < 10; $i++) {
if ($i == 5) {
break; // 當$i為5時,退出循環
}
echo $i . " ";
}
continue
語句用於跳過當前迭代並開始下一次迭代:
for ($i = 0; $i < 10; $i++) {
if ($i == 5) {
continue; // 當$i為5時,跳過當前迭代
}
echo $i . " ";
}
goto
語句用於跳轉到指定標籤。建議謹慎使用goto
,因為它會使代碼難以閱讀和維護:
$i = 0;
start:
echo $i . " ";
$i++;
if ($i < 10) {
goto start;
}
return
語句用於從函數中返回一個值,並結束函數的執行。它可以返回任何類型的值,包括整數、浮點數、字串、陣列、對象等,也可以不返回任何值(即返回 null
)。
function add($a, $b) {
return $a + $b;
}
$result = add(5, 10); // $result 的值為 15
echo $result;