第三章 操作符与控制结构

一.字符串插入

双引号与单引号的区别:

1.双引号的使用:

  1. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  2. <?php
  3. //双引号可以解析变量和转义字符
  4. $username = "jack";
  5. echo "his name is $username!";
  6. echo "<br/>";
  7. $username = "小东";
  8. //如果是英文的感叹号会正常解析变量
  9. echo "他的名字是$username!";//他的名字是小东!
  10. echo "<br/>";
  11. //如果是中文的感叹号则会解析不出来
  12. echo "他的名字是$username!";//他的名字是
  13. echo "<br/>";
  14. //转义字符在这里虽然被解析出来了,但是\n是在源代码里换行
  15. //浏览器显示只是一个字符的位置
  16. echo "他的名字是$username,\n他今年20岁了";//他的名字是小东, 他今年20岁了
  17. echo "<br/>";
  18. //为了避免出现错误,推荐使用字符串连接的方式
  19. echo "他的名字是".$username.",他今年20岁了";//他的名字是小东,他今年20岁了
  20. ?>

2.单引号的使用:

  1. <?php
  2. //单引号只是输出字符串字面值,
  3. //不会解析变量和转义字符。
  4. //也不会进行语法加亮提示
  5. $username = 'anllin';
  6. echo 'his name is $username,\n his age is 20.';
  7. //output
  8. //his name is $username,\n his age is 20.
  9. ?>

部分常用的转义字符

转义序列 描述
\n 换行符
\r 回车
\t 水平制表图
\ 反斜杠
$ 美元符
\” 双引号

二.操作符

  1. <?php
  2. //算术操作符
  3. $a = 5;
  4. $b = 3;
  5. echo $a + $b;
  6. echo '<br/>';
  7. echo $a - $b;
  8. echo '<br/>';
  9. echo $a * $b;
  10. echo '<br/>';
  11. echo $a / $b;
  12. echo '<br/>';
  13. echo $a % $b;
  14. ?>
  15. 8
  16. 2
  17. 15
  18. 1.66666666667
  19. 2
  20. <?php
  21. //复合赋值操作符
  22. $a = 5;
  23. $b = 3;
  24. echo $a += $b;
  25. echo '<br/>';
  26. echo $a -= $b;
  27. echo '<br/>';
  28. echo $a *= $b;
  29. echo '<br/>';
  30. echo $a /= $b;
  31. echo '<br/>';
  32. echo $a %= $b;
  33. echo '<br/>';
  34. echo $a .= $b;
  35. ?>
  36. 8
  37. 5
  38. 15
  39. 5
  40. 2
  41. 23
  42. <?php
  43. //递增递减运算符
  44. $a = 5;
  45. echo ++$a;
  46. echo '<br/>';
  47. echo $a++;
  48. echo '<br/>';
  49. echo --$a;
  50. echo '<br/>';
  51. echo $a--;
  52. ?>
  53. 6
  54. 6
  55. 6
  56. 6
  57. <?php
  58. $a = 5;
  59. $b = 3;
  60. $c = 5;
  61. $d = '5';
  62. echo $a == $c;
  63. echo '<br/>';
  64. echo $a === $c;
  65. echo '<br/>';
  66. echo $a == $d;
  67. echo '<br/>';
  68. echo $a != $b;
  69. echo '<br/>';
  70. echo $a !== $d;
  71. echo '<br/>';
  72. echo $a != $b;
  73. echo '<br/>';
  74. echo $a > $b;
  75. echo '<br/>';
  76. echo $b < $c;
  77. echo '<br/>';
  78. echo $a >= $c;
  79. echo '<br/>';
  80. echo $a <= $c;
  81. ?>
  82. 1
  83. 1
  84. 1
  85. 1
  86. 1
  87. 1
  88. 1
  89. 1
  90. 1
  91. 1
  92. <?php
  93. $a = false;
  94. echo ! $a;
  95. echo '<br/>';
  96. $b = 5;
  97. $c = 3;
  98. echo $b > 0 && $c > 0;
  99. echo '<br/>';
  100. echo $b > 0 and $c > 0;
  101. echo '<br/>';
  102. echo $b != 0 || $c != 0;
  103. echo '<br/>';
  104. echo $b != 0 or $c != 0;
  105. echo '<br/>';
  106. ?>
  107. 1
  108. 1
  109. 1
  110. 1
  111. 1

运算符”and”和”or”比&&和||的优先级要低

三元操作符

  1. <?php
  2. $a = 100;
  3. echo $a > 60 ? 'success':'fail';
  4. ?>
  5. success

错误抑制操作符

  1. <?php
  2. echo @(100/0);
  3. ?>

第三章 操作符与控制结构  - 图1

第三章 操作符与控制结构  - 图2

第三章 操作符与控制结构  - 图3

三.控制结构

If条件判断语句

  1. <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
  2. <?php
  3. $a = 10;
  4. if ($a > 0)
  5. {
  6. echo '整数大于零';
  7. }
  8. echo '<br/>';
  9. if ($a > 0)
  10. {
  11. echo '整数大于零';
  12. }
  13. else if($a < 0)
  14. {
  15. echo '整数小于零';
  16. }
  17. else
  18. {
  19. echo '整数等于零';
  20. }
  21. ?>

Switch语句

  1. <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
  2. <?php
  3. $role = 'admin';
  4. switch ($role)
  5. {
  6. case 'admin' :
  7. echo '管理员';
  8. break;
  9. case 'user' :
  10. echo '普通用户';
  11. break;
  12. case 'guest' :
  13. echo '游客';
  14. break;
  15. default :
  16. echo '游客';
  17. break;
  18. }
  19. ?>

While循环语句

  1. <?php
  2. $a = 10;
  3. while ( $a > 0 )
  4. {
  5. echo $a --;
  6. echo '<br>';
  7. }
  8. ?>

Do while 循环语句

  1. <?php
  2. $a = 10;
  3. do
  4. {
  5. echo $a --;
  6. echo '<br/>';
  7. }
  8. while ( $a > 0 )
  9. ?>

For循环语句

  1. <?php
  2. for($a = 0; $a < 10; $a++)
  3. {
  4. echo $a;
  5. echo '<br/>';
  6. }
  7. ?>

Break语句

  1. <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
  2. <?php
  3. for($a = 0; $a < 10; $a++)
  4. {
  5. echo $a;
  6. echo '<br/>';
  7. if($a ==5)
  8. {
  9. break;//终止循环,但执行循环后面的语句
  10. }
  11. }
  12. echo '循环结束';
  13. ?>

Exit语句

  1. <?php
  2. for($a = 0; $a < 10; $a++)
  3. {
  4. echo $a;
  5. echo '<br/>';
  6. if($a ==5)
  7. {
  8. exit;//直接退出,循环后面的语句不执行
  9. }
  10. }
  11. echo '循环结束';
  12. ?>

Continue语句

  1. <?php
  2. for($a = 0; $a < 10; $a++)
  3. {
  4. echo $a;
  5. echo '<br/>';
  6. if($a ==5)
  7. {
  8. continue;//结束本次循环,继续下次循环,循环后面的语句依然执行
  9. }
  10. }
  11. echo '循环结束';
  12. ?>

原文: https://wizardforcel.gitbooks.io/liyanhui-tutorials/content/114.html