什么是php的流程控制

流程控制

流程控制:代码执行的方向

控制的分类

  1. 顺序结构:代码从上往下,顺序执行。(代码执行的最基本的结构);
  2. 分支结构:给定一个条件,同时有多种可执行代码(块),然后会根据条件执行某一段代码;
  3. 循环结构:在某个条件控制范围内,指定的代码(块)可以重复执行。

顺序结构

顺序结构:最基本结构,所有代码默认都是从上往下依次执行

分支结构

在php中,分支结构主要有两种:if分支和switch分支。

if分支

if:如果的意思,给定一个条件,同时为该条件设置多种(两种)去情况,然后通过条件判断来实现具体的执行段
基本语法:if分支php也提供多种方式来实现
最简if:只有一段代码,但是可以选择是否执行

if(条件表达式){
//满足条件所要的内容;	//顺序结构
}

基础if:有两面性,满足条件或者不满足条件都有对应的执行代码

if(条件表达式){
//满足条件后执行的代码段
}else{
//不满足条件后执行的代码段
}

复杂if结构:在判断条件之后,通常就有两种结果:满足或者不满足,在不满足之后还可以再次进行条件判断

if(条件表达式1){
//条件表达式1的代码段;
}elseif(条件表达式2){
//不满足表达式1条件,但是满足表达式2的代码;
}...//可以使用多个elseif来进行再次条件筛选
Else{
//全部不满足要执行的代码
}

代码演示

<?php

//最简if
$day = 'weekenday';

//如果是星期天就出去玩
if ($day == 'sunday') {
    echo 'go out';
}

//最基本if判断
//如果是星期天就出去玩,否则上班
if ($day == 'sunday') {
    echo 'go out play';
} else {
    //不满足条件
    echo 'work';
}

//复合if结构
//如果是星期天就出去玩,否则不能,但是如果是周六,那么可以在家玩
if ($day == 'sunday') {
    echo 'go out';
} else {
    //包含全部不满足情况
    //重新进行判断
    if ($day == 'satday') {
        echo 'play at home';
    } else {
        echo 'work';
    }
}

echo '<hr>';

if ($day == 'sunday') {
    echo 'go out';
} elseif ($day == 'satday') {
    echo 'play at home';
} else {
    echo 'work';
}
?>

注意:如果条件特别多才会采用复合if形式

  1. 如果条件比较单一(同一个条件),会采用elseif复合方式
  2. 如果判断条件不一致,建议使用嵌套语法(不宜有太多层嵌套:影响代码美观)
    if分支,适用于所有的条件判断(分支结构)

switch分支

switch分支:有一组情形存在,同过条件,通常有多个值,但是每个值都会有对应不同的代码要执行。

switch判断方式:是将条件放到分支结构内部判断

switch基本语法:

switch (条件表达式) {
//所有条件判断:逐个进行
    case1//当前条件表达式的结果与值1相等(==)
        要执行的代码段;
break;            //在switch中,如果条件匹配成功,那么系统就不会再次匹配条件,会自动顺序执行向下的所有代码(case代码除外),需要终止执行:break表示终止执行switch(结束)
    case2:
        要执行的代码段;
break....
//可以使用类似else的语法:都不比配
default//匹配失败的代码;
break;
}

代码演示

<?php

//分支结构:switch语句
//根据日期做不同的事情
$day = 7;

//从1到5做不同的事情
switch ($day){
    case 1:
        echo 1;
        break;
    case 2:
        echo 2;
        break;
    case 3:
        echo 3;
        break;
    case 4:
        echo 4;
        break;
    case 5:
        echo 5;
        break;
    default:
        echo '今天是周六日';
        break;
}

if和switch的选择

  1. if能够做所有的分支结构的事情
  2. switch处理的是条件比较多,同时比较单一,而且是固定值比配的分支结构。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是天呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值