博客列表 >服务端 - PHP - 基础知识之运算符和流程控制

服务端 - PHP - 基础知识之运算符和流程控制

郴
原创
2020年04月20日 17:06:37746浏览

服务端 - PHP - 基础知识之运算符和流程控制

一、运算符

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+版本

2. 字符串运算符

运算符 示例 描述
. $str1 . $str2 连接运算,返回连接之后的字符串

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';

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的整数

5. 逻辑运算符

序号 运算符 示例 描述
1 && $a && $b 逻辑与
2 ` ` `$a $b` 逻辑或
3 ! !$a 逻辑非
4 xor $a xor $b 逻辑异或

6. 三元运算符

序号 运算符 示例 描述 场景
1 ?: $a ?: $b 仅判断表达式true/false 简化双分支
2 ?? $a ?? $b 判断变量存在且不为 null 设置默认值

7. 错误屏蔽符

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

二、流程控制

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 continue 终止本次循环,提前进入下一轮
2 break 跳出本层循环

3. 代码实例

  1. <?php
  2. echo '<h3>';
  3. echo "一、逻辑运算符和三元运算符的运用";
  4. echo'</h3>';
  5. $person_1 = ["name"=>"小明", "sex"=>"男", "age"=>16];
  6. $person_2 = ["name"=>"小红", "sex"=>"女", "age"=>18];
  7. echo $person_1["age"] < 20 && $person_2["age"] < 20 ? $person_1["name"]."和".$person_2["name"]."都是青少年" : $person_1["name"]."和".$person_2["name"]."不是青少年";
  8. echo '<hr>';
  9. echo '<h3>';
  10. echo "二、使用for循环遍历数值数组和使用foreach函数遍历关联数组";
  11. echo'</h3>';
  12. echo '<h4>';
  13. echo "1. 使用for循环遍历数值数组";
  14. echo'</h4>';
  15. $person = ["小明", "男", 16, 13781235421, "xiaoming@qq.com"];
  16. for ($i=0; $i<count($person); $i++) {
  17. echo $person[$i].'<br>';
  18. }
  19. echo '<h4>';
  20. echo "2. 使用foreach函数遍历关联数组";
  21. echo'</h4>';
  22. $person = ["姓名"=>"小明", "性别"=>"男", "年龄"=>16, "手机号码"=>13781235421, "邮箱"=>"xiaoming@qq.com"];
  23. foreach ($person as $key => $value) {
  24. switch ($person) :
  25. case $key === "姓名":
  26. echo "他的".$key."是:".$value."<br>";
  27. break;
  28. case $key === "性别":
  29. echo "他的".$key."是:".$value."<br>";
  30. break;
  31. case $key === "年龄":
  32. echo "他的".$key."是:".$value."<br>";
  33. break;
  34. case $key === "手机号码":
  35. echo "他的".$key."是:".$value."<br>";
  36. break;
  37. default:
  38. echo "他的".$key."是:".$value."<br>";
  39. endswitch;
  40. }
  41. echo '<hr>';
  42. echo '<h3>';
  43. echo "三、使用foreach函数遍历多维数组";
  44. echo'</h3>';
  45. $person = [
  46. "年轻人"=>["姓名"=>"小红", "性别"=>"女", "年龄"=>16, "手机号码"=>13781235421, "邮箱"=>"xiaohong@qq.com"],
  47. "中年人"=>["姓名"=>"李云龙", "性别"=>"男", "年龄"=>45, "手机号码"=>13516935421, "邮箱"=>"liyunlong@qq.com"],
  48. "老年人"=>["姓名"=>"摩根", "性别"=>"男", "年龄"=>74, "手机号码"=>15964554216, "邮箱"=>"mogen@qq.com"]
  49. ];
  50. echo '<pre>';
  51. print_r($person);
  52. echo '</pre>';
  53. foreach ($person as $key_1 => $value_1) {
  54. echo $key_1.":"."<br>";
  55. foreach ($value_1 as $key_2 => $value_2) {
  56. echo $key_2."是:".$value_2."<br>";
  57. if ($key_2 === "邮箱") :
  58. echo "<br>";
  59. endif;
  60. }
  61. }
  62. ?>


三、课程总结

  • 今天学习了 PHP 的基础知识,通过上课认真听讲和认真完成老师布置的作业,使得我对 PHP 的理解和运用更加深入和熟悉。最主要的知识点是明白了各类运算符和条件、循环语句的特点,以及了解并熟悉了各类运算符和条件、循环语句的常见的用法。
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议