博客列表 >PHP:运算符和流程控制

PHP:运算符和流程控制

楷
原创
2020年04月18日 12:35:26587浏览

运算符

代码

  1. <?php
  2. // ## 1. 算术运算符
  3. $result=34%5;
  4. var_dump(34%5);
  5. echo "<hr>";
  6. var_dump($result);
  7. echo "<hr>";
  8. var_dump(2**4);
  9. echo "<hr>";
  10. var_dump(++$result);
  11. echo "<hr>";
  12. var_dump($result++);
  13. echo "<hr>";
  14. var_dump($result++);
  15. echo "<hr>";
  16. // 字符串运算符
  17. var_dump($result++);
  18. echo 'result ='.$result;
  19. echo 'result ='.$result;
  20. echo "<hr>";
  21. // 赋值运算符
  22. $result+=10;
  23. echo 'result+10 ='.$result;
  24. $result*=10;
  25. echo 'result*10 ='.$result;
  26. $result/=10;
  27. echo 'result/10 ='.$result;
  28. $result.=10;
  29. echo 'result.10 ='.$result;
  30. echo "<hr>";
  31. // 比较运算符
  32. $result1=2**20;
  33. echo 'result='.$result.' result1='.$result1;
  34. echo '$result>$result1:';
  35. var_dump($result>$result1);
  36. echo "<hr>";
  37. echo '1<=>1:';
  38. var_dump(1<=>1);
  39. echo '1<=>2:';
  40. var_dump(1<=>2);
  41. echo '3<=>2:';
  42. var_dump(3<=>2);
  43. echo "<hr>";
  44. // 逻辑运算符
  45. echo '1>2 && 2>2 :' ;
  46. var_dump(1>2 && 2>2);
  47. echo "<hr>";
  48. echo '3>2 && 2>1 :' ;
  49. var_dump(3>2 && 2>1);
  50. echo "<hr>";
  51. echo '3>2 || 2>2 :' ;
  52. var_dump(3>2 || 2>2);
  53. echo "<hr>";
  54. echo '3>3 || 2>2 :' ;
  55. var_dump(3>3 || 2>2);
  56. echo "<hr>";
  57. echo '3>3 xor 2>2 :' ;
  58. var_dump(3>3 xor 2>2);
  59. echo "<hr>";
  60. echo '3>2 xor 2>2 :' ;
  61. var_dump(3>2 xor 2>2);
  62. echo "<hr>";
  63. echo '3>2 xor 2>1 :' ;
  64. var_dump(3>2 xor 2>1);
  65. echo "<hr>";
  66. echo '2>3 xor 2>1 :' ;
  67. var_dump(2>3 xor 2>1);
  68. echo "<hr>";
  69. // 三元运算符
  70. $h=1.85;
  71. // $m2=1.5;
  72. echo $h>1.8 ? '个子挺高的':'个子不高';
  73. echo "<hr>";
  74. // $ps='ps123';
  75. $ps=$ps ?? '12345678';
  76. echo '默认密码是'.$ps;
  77. echo "<hr>";

输出结果

流程控制

1. 分支结构

序号 类型 语法 模板语法
1 单分支 if(){...} if(): ... endif;
2 双分支 if(){...} else {...} if(): ... else: ... endif;
3 多分支 if(){...} elseif {...} else {...} if(): ... elseif: ... else: ... endif;
4 switch switch() {case: ... break...} switch(): ...endswitch;

2. 循环结构

序号 类型 语法 模板语法
1 入口判断型 while(){...} while(): ... endwhile;
2 出口判断型 do {...} while(); do : ... while();
3 计数型 for(){...} for () : ... endfor;

代码

  1. <?php
  2. // 分支结构之单分支*模板语法
  3. $i=1;
  4. if ( $i < 10 ) :
  5. $i+=1;
  6. endif;
  7. echo 'i='.$i;
  8. echo "<hr>";
  9. // 分支结构之双分支*模板语法
  10. $i=12;
  11. echo 'i='.$i;
  12. if($i>10):
  13. echo ' i>10';
  14. else:
  15. echo ' i<10';
  16. endif;
  17. echo '<hr>';
  18. // 分支结构之多分支*模板语法
  19. $i=46;
  20. echo 'i='.$i;
  21. if( $i<10):
  22. echo ' i<10';
  23. elseif($i>=10 && $i<30):
  24. echo ' 10<=i<30';
  25. elseif($i>=30 && $i<50):
  26. echo ' 30<=i<50';
  27. elseif($i>=50 && $i<100):
  28. echo ' 50<=i<100';
  29. else:
  30. echo ' i>100';
  31. endif;
  32. echo '<hr>';
  33. $i=16;
  34. echo 'i='.$i;
  35. switch(1):
  36. case $i<10:
  37. echo 'i<10';
  38. break;
  39. case $i>=10 && $i<30:
  40. echo ' 10<=i<30';
  41. break;
  42. case $i>=30 && $i<50:
  43. echo ' 30<=i<50';
  44. break;
  45. default:
  46. echo ' i>=50';
  47. endswitch;
  48. echo '<hr>';
  49. // 循环结构*模板语法
  50. $fruits=['苹果','雪梨','香蕉','芒果','龙眼'];
  51. $fruit=current($fruits);
  52. while ( $fruit=current($fruits) ):
  53. echo $fruit.'<br>';
  54. next($fruits);
  55. endwhile;
  56. // reset($fruits);
  57. echo '<hr>';
  58. $poet=['李白','杜甫','李商隐','杜牧','陆游'];
  59. do {
  60. $p=current($poet);
  61. echo '唐朝诗人:'.$p.'<br>';
  62. next($poet);
  63. }while($p=current($poet));
  64. echo '<hr>';
  65. $mountain=['泰山','嵩山','衡山','华山','恒山'];
  66. echo '五岳是指:'.count($mountain).'座名山。';
  67. echo '<br>';
  68. for ($i=0;$i<count($mountain);$i++):
  69. echo $mountain[$i].' ';
  70. endfor;

总结:
1、计数型循环for最好用,要多练习
2、多分支机构switch用于单值判断的场景
3、这堂课虽然内容多,但是好理解,多谢几次就行了。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议