PHP:流程控制

流程控制就是决定代码"什么时候执行"、“执行多少次”。

6.1 if 语句

如果条件满足,就执行一段代码。

代码示例

<?php
$age = 18;

if ($age >= 18) {
    echo "你已经成年了!";
}
?>

6.2 if…else 语句

满足条件执行一段,不满足执行另一段。

代码示例

<?php
$age = 16;

if ($age >= 18) {
    echo "成年";
} else {
    echo "未成年";
}
?>

6.3 if…elseif…else 语句

多个条件判断。

代码示例

<?php
$score = 85;

if ($score >= 90) {
    echo "优秀";
} elseif ($score >= 80) {
    echo "良好";
} elseif ($score >= 60) {
    echo "及格";
} else {
    echo "不及格";
}
?>

6.4 switch 语句

适合多个固定值的判断。

代码示例

<?php
$day = 3;

switch ($day) {
    case 1:
        echo "星期一";
        break;
    case 2:
        echo "星期二";
        break;
    case 3:
        echo "星期三";
        break;
    default:
        echo "其他";
}
?>

知识点

  • 每个 case 后面要加 break,否则会继续执行后面的
  • default 是默认情况,可选

6.5 while 循环

只要条件满足,就一直执行。

代码示例

<?php
$i = 1;

while ($i <= 5) {
    echo "这是第 $i 次<br>";
    $i++;
}
?>

运行结果

这是第 1 次
这是第 2 次
这是第 3 次
这是第 4 次
这是第 5 次

6.6 do…while 循环

至少执行一次,再判断条件。

代码示例

<?php
$i = 1;

do {
    echo "这是第 $i 次<br>";
    $i++;
} while ($i <= 5);
?>

6.7 for 循环

最常用的循环,知道循环次数时用。

代码示例

<?php
for ($i = 1; $i <= 10; $i++) {
    echo $i . " ";
}
// 输出:1 2 3 4 5 6 7 8 9 10
?>

语法说明

for(初始化; 条件; 增量) {
    循环体
}

6.8 foreach 循环

专门用来遍历数组。

代码示例

<?php
$fruits = ["苹果", "香蕉", "橙子"];

// 只取值
foreach ($fruits as $fruit) {
    echo $fruit . "<br>";
}

// 同时取键和值
$user = [
    "name" => "小明",
    "age" => 18
];
foreach ($user as $key => $value) {
    echo "$key: $value<br>";
}
?>

6.9 break 和 continue

代码示例

<?php
// break:跳出循环
for ($i = 1; $i <= 10; $i++) {
    if ($i == 5) {
        break;  // 到5就停止
    }
    echo $i . " ";
}
// 输出:1 2 3 4

echo "<br>";

// continue:跳过本次,继续下一次
for ($i = 1; $i <= 10; $i++) {
    if ($i % 2 == 0) {
        continue;  // 跳过偶数
    }
    echo $i . " ";
}
// 输出:1 3 5 7 9
?>

本章代码汇总

文件位置:examples/06-control.php

<?php
// 第6章完整示例

echo "<h3>1. if...else</h3>";
$age = 20;
if ($age >= 18) {
    echo "成年<br>";
} else {
    echo "未成年<br>";
}

echo "<h3>2. for循环</h3>";
for ($i = 1; $i <= 5; $i++) {
    echo $i . " ";
}
echo "<br>";

echo "<h3>3. foreach遍历数组</h3>";
$fruits = ["苹果", "香蕉", "橙子"];
foreach ($fruits as $fruit) {
    echo $fruit . " ";
}
echo "<br>";

echo "<h3>4. break和continue</h3>";
for ($i = 1; $i <= 10; $i++) {
    if ($i == 5) break;
    echo $i . " ";
}
?>

本章小结

✅ 会用 if/else 做判断
✅ 会用 for/while 循环
✅ 会用 foreach 遍历数组
✅ 会用 break/continue 控制循环

更多推荐