博客列表 >运算符和流程控制知识点

运算符和流程控制知识点

樊天龙的博客
樊天龙的博客原创
2020年05月08日 05:24:32814浏览

运算符和流程控制知识点

1.运算符

  1. <?php
  2. //自增自减运算符只能作用于变量上
  3. //var_dump(10++);
  4. $num = 0;
  5. var_dump(++$num);//1
  6. echo '<br>';
  7. //在单独的表达式上自增自减运算符放在前后没有区别
  8. //在赋值运算上,自增自减运算符在前面先自增自减,后赋值;自增自减运算符在后面先赋值,后自增自减
  9. //<=>太空船运算符
  10. //左值大于右值返回1
  11. //左值小于右值返回-1
  12. //左值等于右值返回0
  13. var_dump(10<=>5);
  14. echo '<br>';
  15. var_dump(5<=>10);
  16. echo '<br>';
  17. var_dump(10<=>10);
  18. echo '<br>';
  19. //??运算符 相当于对isset()的三元运算符简化
  20. var_dump(isset($password)?$password:'root');
  21. echo '<br>';
  22. var_dump($password??'root');
  23. echo '<br>';
  24. //@错误抑制运算符语法错误不能被屏蔽掉
  25. //幂运算符
  26. var_dump(3**3);//27
  27. echo '<br>';
  28. var_dump(pow(3, 3));//27

2.分支语句

  1. <?php
  2. //分支结构
  3. //获取当前是星期几,1-7
  4. $week = date('N');
  5. /*if语句*/
  6. if ($week != 6 && $week != 7) {
  7. echo '工作愉快!';
  8. }
  9. echo '<br>';
  10. //如果if语句中只有一条语句可以省略花括号
  11. if ($week != 6 && $week != 7) echo '工作愉快!';
  12. echo '<br>';
  13. //和HTML混编时可以简化花括号,模板语法
  14. if ($week != 6 && $week != 7) :
  15. echo '工作愉快!';
  16. endif;
  17. echo '<hr>';
  18. /*if...else语句*/
  19. if ($week == 6 || $week == 7) {
  20. echo '好好休息!';
  21. } else {
  22. echo '工作愉快!';
  23. }
  24. echo '<br>';
  25. //和HTML混编时可以简化括号,模板语法
  26. if ($week == 6 || $week == 7) :
  27. echo '好好休息!';
  28. else:
  29. echo '工作愉快!';
  30. endif;
  31. echo '<hr>';
  32. //if...elseif...else语句
  33. $score = 59;
  34. if ($score >= 90) {
  35. echo '优秀';
  36. } elseif ($score >= 60 && $score < 90) {
  37. echo '及格';
  38. } else {
  39. echo '不及格';
  40. }
  41. echo '<br>';
  42. //和HTML混编时可以简化花括号,模板语法
  43. if ($score >= 90) :
  44. echo '优秀';
  45. elseif ($score >= 60 && $score < 90):
  46. echo '及格';
  47. else:
  48. echo '不及格';
  49. endif;
  50. echo '<br>';
  51. //switch简化多分支
  52. switch ($score) {
  53. case $score >= 90:
  54. echo '优秀';
  55. break;
  56. case $score >= 60 && $score < 90:
  57. echo '及格';
  58. break;
  59. default:
  60. echo '不及格';
  61. break;
  62. }
  63. echo '<br>';
  64. //和HTML混编时可以简化花括号,模板语法
  65. switch ($score):
  66. case $score >= 90:
  67. echo '优秀';
  68. break;
  69. case $score >= 60 && $score < 90:
  70. echo '及格';
  71. break;
  72. default:
  73. echo '不及格';
  74. break;
  75. endswitch;
  76. echo '<br>';
  77. //switch应用:单值判断
  78. switch ($week) {
  79. case 1:
  80. echo '今天是星期一';
  81. break;
  82. case 2:
  83. echo '今天是星期二';
  84. break;
  85. case 3:
  86. echo '今天是星期三';
  87. break;
  88. case 4:
  89. echo '今天是星期四';
  90. break;
  91. case 5:
  92. echo '今天是星期五';
  93. break;
  94. case 6:
  95. echo '今天是星期六';
  96. break;
  97. case 7:
  98. echo '今天是星期日';
  99. break;
  100. }

3.循环语句

  1. <?php
  2. //循环语句
  3. //while 入口型循环,首先判断是否满足条件
  4. //输出5次"hello world!"
  5. $n = 0;
  6. while ($n < 5) {
  7. echo 'hello world!<br>';
  8. $n++;
  9. }
  10. echo '<br>';
  11. //模板写法
  12. $n = 0;
  13. while ($n < 5) :
  14. echo 'hello world!<br>';
  15. $n++;
  16. endwhile;
  17. echo '<hr>';
  18. //do...while 出口型循环,即使不满足条件也会执行一次
  19. do {
  20. echo 'hello world!';
  21. $n++;
  22. } while ($n < 0);
  23. echo '<hr>';
  24. //for循环,也叫计次循环
  25. //循环输出5次"hello world!"
  26. for ($i = 1; $i <= 5; $i++) {
  27. echo 'hello wrold!<br>';
  28. }
  29. echo '<br>';
  30. //模板写法
  31. for ($i = 1; $i <= 5; $i++) :
  32. echo 'hello wrold!<br>';
  33. endfor;
  34. echo '<br>';
  35. //continue 跳出当前循环,进行下一次循环
  36. //循环输出5次"hello world!",因为跳过一次循环所以为4次
  37. for ($i = 5; $i >= 1; $i--) {
  38. if ($i == 3) {
  39. continue;
  40. }
  41. echo 'hello world!<br>';//打印了4次"hello world!"
  42. }
  43. echo '<br>';
  44. //break 终止循环
  45. //循环输出5次"hello world!",因为打印到第三次循环,终止了,所以打印了2次"hello world!"
  46. for ($i = 5; $i >= 1; $i--) {
  47. if ($i == 3) {
  48. break;
  49. }
  50. echo 'hello world!<br>';//打印了2次"hello world!"
  51. }
  52. echo '<hr>';
  53. //for循环打印乘法口诀表
  54. $table = '<table border="1" cellpadding="0" cellspacing="0">';
  55. $table .= '<caption>乘法口诀表</caption>';
  56. for ($i = 1; $i <= 9; $i++) {
  57. $table .= '<tr>';
  58. for ($j = 1; $j <= $i; $j++) {
  59. $table .= '<td>';
  60. $table .= $i . '*' . $j . '=' . $i * $j;
  61. $table .= '</td>';
  62. }
  63. $table .= '</tr>';
  64. }
  65. $table .= '</table>';
  66. echo $table;

4.效果图

5.总结

  • 运算符++,--,<=>等是新手比较容易搞不清楚的,这里重点提及
  • 流程控制决定了代码的执行顺序和循环次数,是开发中应用较多的
  • 结合HTML的知识写了个乘法口诀表的案例,来加强循环语句的学习
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议