从零开始:PHP基础教程系列-第3篇:控制结构:条件语句与循环

从零开始:PHP基础教程系列

第3篇:控制结构

一、控制结构的概念

控制结构是编程语言中用于控制程序执行流程的语句。通过控制结构,程序可以根据条件执行不同的代码块,或者重复执行某些操作。在PHP中,主要的控制结构包括条件语句和循环结构。

二、条件语句

条件语句允许程序根据特定条件执行不同的代码块。PHP提供了几种主要的条件语句:

1. if 语句

if 语句用于根据条件执行代码块。如果条件为真,则执行相应的代码。

php 复制代码
<?php
$age = 18;

if ($age >= 18) {
    echo "你是成年人。";
}
?>
2. if...else 语句

if...else 语句允许在条件为假时执行另一段代码。

php 复制代码
<?php
$age = 16;

if ($age >= 18) {
    echo "你是成年人。";
} else {
    echo "你是未成年人。";
}
?>
3. if...elseif...else 语句

if...elseif...else 语句用于处理多个条件。

php 复制代码
<?php
$score = 85;

if ($score >= 90) {
    echo "优秀";
} elseif ($score >= 75) {
    echo "良好";
} elseif ($score >= 60) {
    echo "合格";
} else {
    echo "不合格";
}
?>
4. switch 语句

switch 语句用于根据变量的值执行不同的代码块,适合处理多个条件的情况。

php 复制代码
<?php
$day = 3;

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

三、循环结构

循环结构用于重复执行某段代码,直到满足特定条件。PHP提供了几种主要的循环结构:

1. while 循环

while 循环在条件为真时重复执行代码块。

php 复制代码
<?php
$count = 1;

while ($count <= 5) {
    echo "计数: $count\n";
    $count++;
}
?>
2. do...while 循环

do...while 循环至少执行一次代码块,然后在条件为真时继续执行。

php 复制代码
<?php
$count = 1;

do {
    echo "计数: $count\n";
    $count++;
} while ($count <= 5);
?>
3. for 循环

for 循环适合已知次数的循环。

php 复制代码
<?php
for ($i = 1; $i <= 5; $i++) {
    echo "计数: $i\n";
}
?>
4. foreach 循环

foreach 循环专门用于遍历数组。

php 复制代码
<?php
$fruits = ["苹果", "香蕉", "樱桃"];

foreach ($fruits as $fruit) {
    echo "水果: $fruit\n";
}
?>

四、控制循环的执行

在循环中,可以使用 breakcontinue 语句控制循环的执行。

  • break:终止循环。
  • continue:跳过当前迭代,继续下一次循环。
php 复制代码
<?php
for ($i = 1; $i <= 5; $i++) {
    if ($i == 3) {
        continue; // 跳过3
    }
    echo "计数: $i\n";
}
?>

五、小结

在本篇文章中,我们介绍了PHP中的控制结构,包括条件语句和循环结构。通过这些控制结构,程序可以根据不同的条件执行不同的操作,或者重复执行某些代码块。掌握控制结构是编写复杂逻辑程序的基础。

在下一篇文章中,我们将探讨函数的定义与使用,帮助你更好地组织和重用代码。继续保持学习的热情,迈向更高的PHP编程水平! 奥顺互联原创文章,转载请注明出处!

相关推荐
wangruofeng33 分钟前
8 小时 10000 星,xAI 把内部编码 Agent 开源了:Grok Build 的架构拆解
开源·github·aigc
楷哥爱开发36 分钟前
如何使用 Claude Fable 5 进行网页抓取?2026最新实战教程
大数据·网络·人工智能
leoZ2311 小时前
Git 集成实战完全指南(二):智能分支管理
大数据·git·elasticsearch
J-Tony112 小时前
【Redis】 Redis 是单线程还是多线程
服务器·数据库·mysql
linux kernel2 小时前
02:库与表的操作
mysql
这个DBA有点耶2 小时前
SQL调优进阶:从“优化一条SQL”到“优化一个系统”的思维升级
java·大数据·数据库·sql·程序人生·dba·改行学it
冬奇Lab2 小时前
每日一个开源项目(第160篇):Destructive Command Guard - 在 AI Agent 运行 rm -rf 之前拦截它
人工智能·安全·开源
李昊哲小课4 小时前
spark4 集群安装
大数据·hadoop·zookeeper·spark
云云只是个程序马喽5 小时前
海外短剧平台搭建方案:私有化源码系统选型|云微短剧系统技术架构拆解
java·php
wuhanzhanhui5 小时前
重塑供应链!2026武汉数字孪生产业展览会亮相,打造工业未来新基石
大数据·人工智能