# PHP 入门第五课:让程序做决定——条件判断和循环
如果程序永远从第一行执行到最后一行,它就很难完成复杂任务。
条件判断让程序“做选择”,循环让程序“重复工作”。
## 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>";
}
}
```
这就是条件判断和循环在实际项目中的典型组合。
## 小结
现在你已经可以让程序:
- 根据条件选择
- 重复执行
- 遍历数据
- 提前结束循环
下一篇学习如何把重复代码封装成函数。
- 点赞
- 收藏
- 关注作者
评论(0)