博客列表 >PHP基础知识——运算符与流程控制

PHP基础知识——运算符与流程控制

phpcn_u202398
phpcn_u202398原创
2020年04月18日 21:21:09447浏览

1、运算符

1.1、 算术运算符

序号 运算符 示例 描述
1 + $a+$b $a与$b 的和
2 - $a-$b $a与$b 的差
3 * $a*$b $a与$b 的积
4 / $a/$b $a与$b 的商
5 % $a%$b $a与$b 的余(模)
6 ++ $a++/++$a 先用再加/先加再用
7 -- $a--/--$a 先用再减/先减再用
8 ** 2**4 幂运算:2 的 4 次方

注意

  • $a++=>$a = $a + 1, $a--=>$a = $a - 1

  • **: 幂运算需要 php5.6+版本

    代码实例
  1. <?php
  2. $a = 4;
  3. $b = 6;
  4. echo ++$a . "<br>" ;
  5. echo --$b;
  6. echo "<hr>";
  7. $c = 4;
  8. echo $c**3;
  9. ?>

1.2、 字符串运算符

运算符 示例 描述
. $str1 . $str2 连接运算,返回连接之后的字符串
代码实例
  1. <?php
  2. $a = "欢迎你";
  3. $b = "来PHP中文网";
  4. echo $a . $b;
  5. ?>

1.3、 赋值运算符

序号 运算符 示例 描述
1 = $a = 10 将表达式的值赋给变量
2 += $a += 10 $a = $a + 10;
3 -= $a -= 10 $a = $a - 10;
4 *= $a *= 10 $a = $a * 10;
5 /= $a /= 10 $a = $a / 10;
6 %= $a %= 10 $a = $a % 10;
7 .= $a .= 'a' $a = $a . 'a';
代码实例
  1. <?php
  2. $a = 45;
  3. $b = 12;
  4. //echo $a/=$b;
  5. echo $a%=$b;
  6. echo"<hr>";
  7. $ab = 41;
  8. $bc = 10;
  9. echo $ab+=$bc;
  10. ?>

1.4、 比较运算符

序号 运算符 示例 描述
1 > $a > $b 大于
2 >= $a >= $b 大于或等于
3 < $a < $b 小于
4 <= $a <= $b 小于或等于
5 == $a == $b 等于 (值相等即可)
6 === $a == $b 全等于(二边值与类型全等)
7 != $a != $b 不相等
8 !== $a !== $b 不全等
9 <=> $a <=> $b 太空船php7+
  • 比较运算符: 返回布尔值,常用于流程控制中(if/while/for...)
  • <=>: 也叫组合比较符, 例如$a <=> $b, 有三种返回结果
序号 运算 结果
1 $a > $b 返回>0的整数
2 $a < $b 返回<0的整数
3 $a = $b 返回=0的整数
代码实例
  1. <?php
  2. $a = 21;
  3. $b = 10;
  4. if($a>$b){
  5. echo "$a".">"."$b";
  6. }else{
  7. echo "$a"."<"."$b";
  8. }
  9. echo"<hr>";
  10. $a = 10;
  11. $b = "10";
  12. if($a==$b){
  13. echo "$a"."="."$b";
  14. }else{
  15. echo "$a"."≠"."$b";
  16. }
  17. echo"<br>";
  18. if($a===$b){
  19. echo "$a"."="."$b";
  20. }else{
  21. echo "$a"."≠"."$b";
  22. }
  23. echo"<hr>";
  24. $a = 10;
  25. $b = 8;
  26. var_dump($a<=>$b);
  27. $a = 4;
  28. $b = 8;
  29. var_dump($a<=>$b);
  30. $a = 4;
  31. $b = 4;
  32. var_dump($a<=>$b);
  33. ?>

1.5、 逻辑运算符

序号 运算符 示例 描述
1 && $a && $b 逻辑与
2 ` ` `$a $b` 逻辑或
3 ! !$a 逻辑非
4 xor $a xor $b 逻辑异或
代码实例
  1. <?php
  2. $a = true;
  3. $b = false;
  4. if($a && $b){//如果都为真
  5. echo "真";
  6. }else{
  7. echo "假";
  8. }
  9. echo "<br>";
  10. if($a || $b){//只要有一个为真
  11. echo "真";
  12. }else{
  13. echo "假";
  14. }
  15. echo "<br>";
  16. $a = 10;
  17. $b = 12;
  18. if($a != $b){
  19. echo "不相等";
  20. }else{
  21. echo "相等";
  22. }
  23. echo "<br>";
  24. ?>

1.6、 三元运算符

序号 运算符 示例 描述 场景
1 ?: $a ?: $b 仅判断表达式true/false 简化双分支
2 ?? $a ?? $b 判断变量存在且不为 null 设置默认值
代码示例
  1. <?php
  2. $a=null;
  3. echo isset($a) ? '$a='. "$a" : '$a不存在';
  4. echo "<hr>";
  5. $a=123;
  6. echo isset($a) ?'$a='. "$a" : '$a不存在';
  7. ?>

1.7、 错误屏蔽符

运算符 示例 描述 场景
@ @(10/0) 屏蔽所有运行错误 线上生产环境

2、流程控制

2.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;
代码实例
  1. <?php
  2. $a = 2;
  3. $b = 3;
  4. if ($a>$b){
  5. echo '$a'.'>'.'$b';
  6. }elseif($a<$b){
  7. echo '$a'.'<'.'$b';
  8. }else{
  9. echo'$a'.'='.'$b';
  10. }
  11. echo"<br>";
  12. //模板语法
  13. $a = 4;
  14. $b = 3;
  15. if ($a>$b):
  16. echo '$a'.'>'.'$b';
  17. elseif($a<$b):
  18. echo '$a'.'<'.'$b';
  19. else:
  20. echo'$a'.'='.'$b';
  21. endif;
  22. $date = date("F");
  23. switch($date){
  24. case "January" :
  25. echo"一月";
  26. break;
  27. case "February " :
  28. echo"二月";
  29. break;
  30. case "March" :
  31. echo"三月";
  32. break;
  33. case "April" :
  34. echo"四月";
  35. break;
  36. case "May" :
  37. echo"五月";
  38. break;
  39. }
  40. //模板语法
  41. switch($date):
  42. case "January" :
  43. echo"一月";
  44. break;
  45. case "February " :
  46. echo"二月";
  47. break;
  48. case "March" :
  49. echo"三月";
  50. break;
  51. case "April" :
  52. echo"四月";
  53. break;
  54. case "May" :
  55. echo"五月";
  56. break;
  57. endswitch
  58. ?>

2.2、 循环结构

序号 类型 语法 模板语法
1 入口判断型 while(){...} while(): ... endwhile;
2 出口判断型 do {...} while(); do : ... while();
3 计数型 for(){...} for () : ... endfor;
代码实例
  1. <?php
  2. for($i=0; $i<6; $i++ ){
  3. for($j=0; $j<$i; $j++ ){
  4. echo "*";
  5. }
  6. echo "<br>";
  7. }
  8. //模板语法
  9. echo"<br>";
  10. for($i=0; $i<5; $i++ ):
  11. for($j=$i; $j<5; $j++ ):
  12. echo "*";
  13. endfor;
  14. echo "<br>";
  15. endfor
  16. ?>

循环控制关键字:

序号 关键字 描述
1 continue 终止本次循环,提前进入下一轮
2 break 跳出本层循环

学习总结

本节课我们学习了PHP基础知识————运算符与流程控制,通过本节课的学习对运算符和流程控制知识进行了巩固,记忆更加深刻。同时学到了一个新的知识点流程控制中的模板语法,这样有助于PHP与HTML进行混编。

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