博客列表 >PHP逻辑运算和流程控制

PHP逻辑运算和流程控制

emagic
emagic原创
2020年07月07日 11:30:50776浏览

0706作业

一、实例演示分支结构,特别是多分支与switch,

1.单分支

  1. <?php
  2. $day = 1;
  3. // 实际支付的金额,默认值是不打折的金额
  4. if ($day === 1) echo '今天是星期' . $day . '<hr>';

2. 双分支

  1. $day = 1;
  2. if ($day == 6 || $day == 7) :
  3. // 模型语句
  4. echo '今天是休息日';
  5. else :
  6. echo '今天是苦逼工作日';
  7. endif;
  8. echo '<hr>';

3.多分支

  1. switch (true) {
  2. case $day == 1;
  3. echo '星期一';
  4. break;
  5. case $day == 2;
  6. echo '星期二';
  7. break;
  8. case $day == 3;
  9. echo '星期三';
  10. break;
  11. case $day == 4;
  12. echo '星期四';
  13. break;
  14. case $day == 5;
  15. echo '星期五';
  16. break;
  17. default:
  18. echo '双休日';
  19. }
  • 要保证能进入循环体,入口设置了switch (true)

4.isset+三元判断

  1. <?php
  2. <?php
  3. error_reporting(E_ALL);
  4. echo $username ?? 'administrator';
  5. //等同于 echo isset($username) ? $username : 'administrator';

二、使用多种循环方式来遍历数组,while,for

1.while循环遍历数组

  1. $i = 0;
  2. while ($i < count($arr)) {
  3. echo '当前元素为:' . $arr[$i] . '<br>';
  4. $i++;
  5. //循环体内必须要有更新循环条件的语句,否则会进入死循环
  6. }
  • 循环体内必须要有更新循环条件的语句,否则会进入死循环

2.for循环遍历数组

  1. <?php
  2. error_reporting(E_ALL);
  3. $arr = ['a', 'b', 'c', 'd', 'e'];
  4. for ($i = 0; $i < count($arr); $i++) {
  5. echo '当前元素为:' . $arr[$i] . '<br>';
  6. }

课堂小结

比较运算返回布尔值

1.逻辑运算符

符号 描述
== 值比较,当操作符两边的操作数类型不一致时会触发类型自动转换。
=== 除了值相等,类型也必须一致
<=> 太空船运算符
&& 与运算,两边表达式除非全部为true,否则返回false
|| 或运算,两边表达式只要有一个为true,则返回true
条件满足?为真执行:为假执行 三元运算
?? isset()+三元运算
  • 短路求值:如果一个表达式为false,则直接执行else分支,不会再去计算后面的条件

  • isset()+三元运算 =变量默认值设置

2.太空船运算符

左值<=>右值

序号 描述
1 左-右>0 返回1
2 左-右<0 返回-1
3 左-右=0 返回0

3.代码简写

  • 当流程语控制句只有一行代码的时候,可以省略大括号

  • 模板语法:就是干掉流程控制中大括号
    将起始大括号用冒号:代替,将结束大括弧用特殊关键字代替(endif)
    do {}while没有对应的模板语法

4.分支控制

类型 描述
入口判断型 while 进入循环代码之前进行判断,只有条件为真才执行循环
出口判断型 do{}while条件,无论条件是否满足都至少先执行一遍
记数型循环 for(循环变量的初始化;循环条件;更新循环条件{执行代码块})
  • 循环体内必须要有更新循环条件的语句,否则会进入死循环

  • 数组指针复位,重新指向第一个reset()

5.中断循环体

类型 描述
break 终止程序,后续循环不继续,完全退出循环体,如1、2、3 ,从4后面都不玩了全部回家
continue 跳出当前循环,但后续循环会继续,如1、2、3、、5、6……4不玩了而已
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议