2.1、IF分支

目标:掌握IF分支的结构语法,以及能够运用IF结构实现分支结构解决问题

概念IF分支:一种可以接收任意条件的分支结构

  • 简单IF分支:条件满足执行,不满足不执行代码

    • if(条件表达式){满足条件后执行的代码块}
  • 标准IF分支:条件满足执行一块代码,不满足执行另外一块代码

    • if(条件表达式){满足条件后执行的代码块}else{不满足条件执行的代码块}
  • 复杂IF分支:有多个条件,条件有递进性

    • if(条件1){满足执行}elseif(条件2){不满足条件1满足条件2执行}...else{都不满足执行}
  • IF分支永远最多执行一个代码块
  • IF分支代码块里可以嵌入IF分支

步骤

1、确定条件

  • 条件是否唯一

2、确定分支代码块

  • 满足条件的代码块
  • 不满足条件的代码块(非必须:看功能需要)

3、根据条件执行

示例

1、简单

明天天气好,我就出去走走

#确定条件
$weather = 'good';

#确定分支代码块
if($weather == 'good'){
    echo '出去走走';
}
#结果:出去走走

#执行时:如果$weather == 'good',执行代码块;否则跳过

2、标准

明天天气好,我就出去走走;否则我就在家睡觉

#确定条件
$weather = 'bad';

#确定分支代码块
if($weather == 'good'){
    echo '出去走走';
}else{
    echo '在家睡觉';
}
#结果:在家睡觉

#执行时:如果$weather == 'good',执行代码块'出去走走';其他所有条件都执行'在家睡觉'

3、复杂

明天天气出太阳,出去走走;天气刮风,去看电影;天气阴天,在家看书;否则睡觉

#确定条件
$weather = 'rain';

#确定分支代码块
if($weather == 'sun'){
    echo '出去走走';
}elseif($weather == 'wind'){
    echo '去看电影';
}else if($weather == 'cloud'){    #PHP中elseif和else if效果一样
    echo '在家看书';
}else{
    echo '睡觉';
}
#结果:睡觉

/*
 执行步骤
 1、判定$weather == sun是否匹配:不匹配
 2、判定$weather == wind是否匹配:不匹配
 3、判定$weather == cloud是否匹配:不匹配
 4、有else,前面都不匹配,自然落到else中:睡觉
*/

4、明天天气好:出太阳,出去走走;其他,去看电影;天气不好:阴天,看电视;其他,睡觉

#确定条件:两组条件(大条件和小条件)
$weather1 = 'good';
$weather2 = 'sun';

#确定分支代码块:大条件
if($weather1 == 'good'){
    #天气好:确定小条件
    if($weather2 == 'sun'){
        echo '出去走走'
    }else{
        echo '去看电影';
    }
}else{
    #天气不好:确定小条件
    if($weather2 == 'cloud'){
        echo '看电视';
    }else{
        echo '睡觉';
    }
}

总结

1、IF分支是一种可以有多个条件,但是最多只会执行一个代码块的分支

2、IF在实际开发中根据条件的细分,可以有多种结构

  • 简单IF分支:只有一个if条件和满足条件的代码块
  • 基本IF分支:只有一个if条件和满足条件的代码块,同时还有else不满足条件的代码块
  • 复杂IF分支:有if条件和满足的代码块,也有不满足前面条件,但是可以还可以满足其他条件的代码块,而且理论不限

3、IF分支可以解决所有根据条件所有可能的情形

4、IF中可以嵌入IF分支,建议不要超过3层,太多层会让代码的可读性变差

Last modification:February 11th, 2020 at 07:04 pm