# PHP 入门第五课:让程序做决定——条件判断和循环

举报
yd_220371319 发表于 2026/09/24 22:40:52 2026/09/24
【摘要】 如果程序永远从第一行执行到最后一行,它就很难完成复杂任务。条件判断让程序“做选择”,循环让程序“重复工作”。## if最基本的判断:```php$age = 20;if ($age >= 18) {    echo "成年人";}```## else```php$age = 16;if ($age >= 18) {    echo "成年人";} else {    echo "未成年人";...


如果程序永远从第一行执行到最后一行,它就很难完成复杂任务。

条件判断让程序“做选择”,循环让程序“重复工作”。

## if

最基本的判断:

```php
$age = 20;

if ($age >= 18) {
    echo "成年人";
}
```

## else

```php
$age = 16;

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

## elseif

```php
$score = 85;

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

## 多个条件

```php
if ($age >= 18 && $hasTicket) {
    echo "允许进入";
}
```

常见逻辑运算符:

```text
&&   并且
||   或者
!    取反
```

## switch

当需要根据一个值进行多个分支判断时,可以使用:

```php
$role = "admin";

switch ($role) {
    case "admin":
        echo "管理员";
        break;

    case "user":
        echo "普通用户";
        break;

    default:
        echo "未知角色";
}
```

## for 循环

```php
for ($i = 0; $i < 5; $i++) {
    echo $i . "<br>";
}
```

输出:

```text
0
1
2
3
4
```

## foreach

处理数组时最常用:

```php
$names = ["Tom", "Jack", "Lucy"];

foreach ($names as $name) {
    echo $name . "<br>";
}
```

关联数组:

```php
$user = [
    "name" => "Tom",
    "age" => 20
];

foreach ($user as $key => $value) {
    echo "$key = $value<br>";
}
```

## while

```php
$i = 0;

while ($i < 5) {
    echo $i;
    $i++;
}
```

## break 和 continue

`break` 可以直接结束循环:

```php
for ($i = 0; $i < 10; $i++) {
    if ($i === 5) {
        break;
    }

    echo $i;
}
```

`continue` 会跳过当前这一次循环:

```php
for ($i = 0; $i < 5; $i++) {
    if ($i === 2) {
        continue;
    }

    echo $i;
}
```

## 一个实际例子

假设有用户列表:

```php
$users = [
    ["name" => "Tom", "age" => 20],
    ["name" => "Jack", "age" => 16],
    ["name" => "Lucy", "age" => 25]
];
```

找出成年人:

```php
foreach ($users as $user) {
    if ($user["age"] >= 18) {
        echo $user["name"] . "<br>";
    }
}
```

这就是条件判断和循环在实际项目中的典型组合。

## 小结

现在你已经可以让程序:

- 根据条件选择
- 重复执行
- 遍历数据
- 提前结束循环

下一篇学习如何把重复代码封装成函数。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。