Blogger Information
Blog 37
fans 1
comment 0
visits 32620
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
php入门知识:运算符&分支与循环结构
Jason Pu?
Original
664 people have browsed it

一.PHP运算符

PHP运算符分为:
1:算术运算符:加:+, 减:-, 乘:, 除:/, 取余:%
2:字符串运算符:字符运算符只有一个,即英文的句号:“.”
3.赋值运算符:赋值运算符是把基本赋值运算符“=”右边的值赋给左边的变量或常量,常用赋值运算符有:=, +=, -=,
=, /=, .=, %=
4.递增或递减运算符:++,—
5.逻辑运算符:逻辑与:&&或and, 逻辑与或||或or, 逻辑异或:xor, 逻辑非:!
6.比较运算符:小于:<, 大于:>, 小于或等于:<=, 大于或等于:>=, 相等:==, 不等:_=, 恒等:===, 非恒等:!==


以下选重点及易错运算符演示:
1.在算术运算符里,/和%很容易混淆,/是除,%是取余数,例如:

  1. echo 10/3;//3.3333333333333
  2. echo 10%3;//1

判断一下去年是不是闰年:

  1. $last_year = date("Y")-1;
  2. if($last_year % 4===0 && $last_year %100 !==0){
  3. printf('%d年是闰年',$last_year);
  4. }else{
  5. printf('%d年不是闰年',$last_year);
  6. }
  7. //运算结果是:2020年是闰年

2.自增和自减运算符在前后的意义:
++$a或—$a是先执行 $a=$a+1,或者$a=$a-1,再用$a,例如:

  1. $a = 10;
  2. printf ('++a=%d,$a=%d',++$a,$a);//++a=11,$a=11
  3. printf ('++a=%d,$a=%d',$a++,$a);//++a=10,$a=11

3.用”.=”做字符串拼接:

  1. $str = "I am:";
  2. $str .= "Jasper";
  3. echo $str;//I am:Jasper

4:==和===的差别:==只要值相等就是true,如果二边类型不同会自动转换,例如:

  1. var_export(100=="100");//true
  2. //展开就是:
  3. var_export(100==(int)100);
  4. //或者:
  5. var_export((string)100=="100");

===是要求值和类型都相同才返回true:

  1. var_export(100==="100");//false
  2. var_export(100===(int)"100");//true

5.太空船运算符:<=>:用于比较两个表达式 $a 和 $b,如果 $a 小于、等于或大于 $b时,它分别返回-1、0或1。例如:

  1. var_export (1<=>1);//0
  2. var_export (1<=>2);//-1

6.三元运算符简化if(){}else{}:
if条件:

  1. $age=18;
  2. if($age>=18){
  3. echo "可以去酒吧玩耍!";
  4. }else{
  5. echo "小孩子好好学习不要去酒吧!";
  6. };

使用三元运算简化后:

  1. echo $age>=18?"可以去酒吧玩耍!":"小孩子好好学习不要去酒吧!";

7.null合并运算符(??)
例如原表达式为:

  1. if(isset($a)){
  2. $a;
  3. } else {
  4. $b;
  5. };

简化成null合并运算符:

  1. $a ?? $b;//$a是不是是null,如果不为null,则返回$a,否则返回$b;

二.PHP的流程控制与循环结构

流程控制:

1:单分支:

  1. $score = 80;
  2. if($score>=60){
  3. echo "恭喜你本校录取了!";
  4. }
  5. //php替代语法:
  6. if($score>=60):
  7. echo "恭喜你本校录取了!";
  8. endif;

2.双分支:

  1. if($score>=60){
  2. echo "恭喜你本校录取了!";
  3. }else{
  4. echo "继续努力吧同学!";
  5. };
  6. //PHP简化替代语法:
  7. if($score>=60):
  8. echo "恭喜你本校录取了!";
  9. else:
  10. echo "继续努力吧同学!";
  11. endif;

3.三元表达式:

  1. echo $score>=60?"恭喜你本校录取了!":"继续努力吧同学!";

4.多分支:

  1. if($score>100){
  2. echo "请输入一个合法的分数!";
  3. }elseif($score<80 && $score>=60){
  4. echo "恭喜你被本校录取!";
  5. }elseif($score>=80){
  6. echo "恭喜你被本校录取并可以申请奖学金!";
  7. }else{
  8. echo "继续努力吧同学!";
  9. };
  10. //PHP简化替代语法:
  11. if($score>100):
  12. echo "请输入一个合法的分数!";
  13. elseif($score<80 && $score>=60):
  14. echo "恭喜你被本校录取!";
  15. elseif($score>=80):
  16. echo "恭喜你被本校录取并可以申请奖学金!";
  17. else:
  18. echo "继续努力吧同学!";
  19. endif;

5.用switch判断现在的季节:

  1. $month = date("n");
  2. switch ($month){
  3. case 3 || 4 || 5:
  4. echo "Spring";
  5. break;
  6. case 6 || 7 || 8:
  7. echo "Summer";
  8. break;
  9. case 9 || 10 || 11:
  10. echo "autumn";
  11. break;
  12. case 12 || 1 || 2:
  13. echo "winter";
  14. break;
  15. default:
  16. echo "No such of month in a year...";
  17. };
  18. **//PHP简化替代语法:**
  19. switch ($month):
  20. case 3 || 4 || 5:
  21. echo "Spring";
  22. break;
  23. case 6 || 7 || 8:
  24. echo "Summer";
  25. break;
  26. case 9 || 10 || 11:
  27. echo "autumn";
  28. break;
  29. case 12 || 1 || 2:
  30. echo "winter";
  31. break;
  32. default:
  33. echo "No such of month in a year...";
  34. endswitch;

循环:

循环结构有三要素:1循环条件的初始值,2循环条件,3更新循环的条件
1:入口型:

  1. $movies_name = ["无依之地","一秒钟"," 穷途鼠的奶酪梦","女人的碎片","刻在你心底的名字"];
  2. $i=0;
  3. while($i<count($movies_name)){
  4. echo $movies_name[$i]."<br>";
  5. $i++;
  6. };

2.出口型:do{…}while(),就算当前条件为false,也要先干一次再判断

  1. $i=0;
  2. do{
  3. echo $movies_name[$i]."<br>";
  4. $i++;
  5. }while($i<count($movies_name));

3.计算式:for,可以当作是while的简化,可以在循环体中加入条件判断,continue:进入到下一轮,break:直接退出循环

  1. for($i=0;$i<count($movies_name);$i++){
  2. //跳过这部电影:
  3. if($movies_name[$i]=="女人的碎片") continue;
  4. echo $movies_name[$i]."<br>";
  5. };

4.直接遍历所有电影:

  1. foreach ($movies_name as $movie){
  2. if($movie=="女人的碎片") break;//提前跳出循环
  3. echo $movie."<br>";
  4. };

三.include和require引入的差别

require() 语句的性能与 include() 相类似,都是包括并运行指定文件
include是在运行阶段包含,所以可以用在if中

include与require最大的区别就是:
include在引入不存文件时产生一个警告且脚本还会继续执行,
require则会导致一个致命性错误且脚本停止执行。
include_once和require_once:只包含一次

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post