ASCII码 ASCII码

PHP实例演示分支与循环

发布于:2022-04-21 15:42:19  栏目:技术文档

分支

实例代码如下:

  1. <?php
  2. // ! 流程控制: 分支
  3. $score = 88;
  4. // * 1. 单分支
  5. if ($score >= 60) {
  6. echo '恭喜, 你已经及格了<br>';
  7. }
  8. // * 2. 双分支
  9. // if ($score >= 60) {
  10. // echo '恭喜, 你已经及格了<br>';
  11. // } else {
  12. // 默认分支
  13. // echo '不及格<br>';
  14. // }
  15. // 分支只有一行代码,可以不写大括号
  16. if ($score >= 60)
  17. echo '恭喜, 你已经及格了<br>';
  18. else
  19. // 默认分支
  20. echo '不及格<br>';
  21. // * 3. 多分支
  22. $score = 65;
  23. if ($score>=60 && $score < 70)
  24. echo "{$score}分,合格 <br>";
  25. else if ($score>=70 && $score < 80)
  26. echo "{$score}分,良好 <br>";
  27. else if ($score >= 80)
  28. echo "{score}分,优秀 <br>";
  29. // 分数 < 60, 默认分支
  30. else
  31. echo "{$score}分,不及格 <br>";
  32. echo '<hr>';
  33. // * 4. 多分支的语法糖:switch
  34. $age = 36;
  35. switch (true) {
  36. case $age >= 18 && $age < 30:
  37. echo "{$age}岁, 正值青年<br>";
  38. break;
  39. case $age >= 30 && $age < 45:
  40. echo "{$age}岁, 青壮年,好好奋斗! <br>";
  41. break;
  42. case $age >= 45:
  43. echo "{$age}岁, 事业有成,家庭幸福美满! <br>";
  44. break;
  45. default:
  46. echo "{$age}岁, 学习的黄金阶段,好好学习! <br>";
  47. }

运行后

循环

实例代码如下:

  1. <?php
  2. // ! 流程控制: 循环
  3. // 循环本质上还是"分支"
  4. $days = ['今天', '明天', '昨天'];
  5. // 1. 初始化循环变量,这里用索引当循环变量, $i=0;指向第一个数组元素
  6. // $i = 0;
  7. // 2. 循环条件
  8. // 数组长度 = 最大索引 + 1
  9. // 3. 更新循环条件
  10. // $i = $i + 1;
  11. /**
  12. * 循环三要素:
  13. * 1. 初始化循环变量: $i =0;
  14. * 2. 循环条件: $i < count($days);
  15. * 3. 更新循环条件: $i = $i + 1
  16. */
  17. // * while() 来简化以上的分支过程
  18. $list = '<ul style="border:1px solid;background: lightcyan">';
  19. $i = 0;
  20. while ($i < count($days)) {
  21. $list .= "<li>{$days[$i]}</li>";
  22. // 更新条件
  23. $i = $i + 1;
  24. }
  25. $list .= '</ul>';
  26. echo $list;
  27. // while 还有一个双胞胎, do-while 与上面的区别在于条件判断的时机不同
  28. $list = '<ul style="border:1px solid;background: lightgreen">';
  29. $i = 0;
  30. do {
  31. $list .= "<li>{$days[$i]}</li>";
  32. // 更新条件
  33. $i = $i + 1;
  34. } while ($i > count($days));
  35. $list .= '</ul>';
  36. echo $list;
  37. // for 可看成 while 的语法糖
  38. $list = '<ul style="border:1px solid;background: violet">';
  39. for ($i = 0; $i < count($days); $i++) {
  40. $list .= "<li>{$days[$i]}</li>";
  41. }
  42. $list .= '</ul>';
  43. echo $list;
  44. // 中断或跳过某次循环
  45. // break; continue
  46. $list = '<ul style="border:1px solid;background: pink">';
  47. for ($i = 0; $i < count($days); $i++) {
  48. // 只输出前二个
  49. // if ($i > 1) break;
  50. // 跳过第2个,只输出第1个和第3个
  51. if ($i === 1) continue;
  52. $list .= "<li>{$days[$i]}</li>";
  53. }
  54. $list .= '</ul>';
  55. echo $list;

运行后

相关推荐
阅读 +