php流程控制

if语句,switch语句,while循环,do…while循环,for循环,foreach循环,break中断循环,continue指令.下面通过星期函数来演示这些.

程序三种流程控制结构

1、顺序结构

2、选择结构

3、循环结构

结果如下实例代码如下:

  1. $d=date("D");
  2. if ($d=="Tue")
  3. echo "今天是星期二";
  4. else
  5. echo "今天不是星期二";
  6. ?>

通过数组可以判断星期几.

执行结果应如下实例代码如下:

  1. $srttime=date("w",time());
  2. $array=array('天','一','二','三','四','五','六');
  3. $todaytime=date("Y年m月d日 星期{$array[$srttime]}",time());
  4. echo $todaytime;
  5. ?>
  6. 1. if (条件一) {
  7. ?⑹?/p>
  8. }
  9. <HTML>
  10. <HEAD>
  11. <TITLE> IF - 1 </TITLE>
  12. </HEAD>
  13. <BODY>
  14. <?
  15. $a = 100 ;
  16. if ( $a == 100 ) {
  17. echo "A is 100. ";
  18. }
  19. ?>
  20. </BODY>
  21. </HTML>
  22. if (条件一) {
  23. ?⑹鲆?/p>
  24. } else {
  25. ?⑹龆?/p>
  26. }
  27. <HTML>
  28. <HEAD>
  29. <TITLE> IF … ELSE - 1 </TITLE>
  30. </HEAD>
  31. <BODY>
  32. <?
  33. $a = 120 ;
  34. if ($a < 100 ) {
  35. echo " A was small than 100. ";
  36. }
  37. else {
  38. echo " A was big than 100. ";
  39. }
  40. ?>
  41. </BODY>
  42. </HTML>
  43.  
  44. <HTML>
  45. <HEAD>
  46. <TITLE> IF … ELSE - 2 </TITLE>
  47. </HEAD>
  48. <BODY>
  49. <?
  50. $file = "files.txt" ;
  51. if ( file_exists($file) ) { //?z查?n案是否存在
  52. echo " ?是?n案 files.txt的?热? <BR> ";
  53. readfile ($file) ; //?出?n案?热?br /> }
  54. else {
  55. echo " ?o此?n案 <BR>";
  56. }
  57. ?>
  58. </BODY>
  59. </HTML>
  60. if (条件一) {
  61. ?⑹鲆?/p>
  62. } elseif {
  63. ?⑹龆?/p>
  64. } elseif {
  65. ?⑹鋈?/p>
  66. }
  67. ...........
  68. else {
  69. ?⑹?
  70. }
  71. <HTML>
  72. <HEAD>
  73. <TITLE> IF … ELSEIF … ELSE - 1 </TITLE>
  74. </HEAD>
  75. <BODY>
  76. <?
  77. $a = 100 ;
  78. $b = 200 ;
  79. if ($a > $b) {
  80. echo "a is bigger than b";
  81. } elseif ($a == $b) {
  82. echo "a is equal to b";
  83. } else {
  84. print "a is smaller than b";
  85. }
  86. ?>
  87. </BODY>
  88. </HTML>
  89. 2. while (条件一) { //条件?檎? ??
  90. ?⑹鲆?/p>
  91. }
  92. <HTML>
  93. <HEAD>
  94. <TITLE> WHILE </TITLE>
  95. </HEAD>
  96. <BODY>
  97. <?
  98. $a = 1 ;
  99. while ( $a < 10 ) {
  100. echo "$a <BR>";
  101. $a++;
  102. }
  103. ?>
  104. </BODY>
  105. </HTML>
  106.  
  107. 3. do {
  108. ?⑹?/p>
  109. } while (条件); //条件?檎? ??
  110. <HTML>
  111. <HEAD>
  112. <TITLE> Do .. WHILE - 1 </TITLE>
  113. </HEAD>
  114. <BODY>
  115. <?
  116. $a = 1 ;
  117. do {
  118. echo "$a <BR>";
  119. $a++;
  120. } while ( $a < 10 )
  121. ?>
  122. </BODY>
  123. </HTML>
  124.  
  125. 4. for (初始条件; 判?嗵跫? 条件改??⑹? {
  126. ?⑹?/p>
  127. }
  128. <HTML>
  129. <HEAD>
  130. <TITLE> For - 1 </TITLE>
  131. </HEAD>
  132. <BODY>
  133. <?
  134. for ( $a = 1 ; $a < 10 ; $a++ )
  135. {
  136. echo "$a <BR>";
  137. }
  138. ?>
  139. </BODY>
  140. </HTML>
  141. 5. break //中?嗾?诘霓?圈
  142. <HTML>
  143. <HEAD>
  144. <TITLE> BREAK </TITLE>
  145. </HEAD>
  146. <BODY>
  147. <?
  148. $abc[0] = '0' ;
  149. $abc[1] = '1' ;
  150. $abc[2] = '2' ;
  151. $a = 0 ;
  152. while ( $a < 4 )
  153. {
  154. if ( $abc[$a] == '2' ) { //若?檎? 跳?while()?圈
  155. break;
  156. }
  157. echo "$a";
  158. $a++;
  159. }
  160. ?>
  161. </BODY>
  162. </HTML>
  163. 6. continue //中?嗾?诘霓?圈, 跳到?圈????下一次
  164. <HTML>
  165. <HEAD>
  166. <TITLE> CONTINUE </TITLE>
  167. </HEAD>
  168. <BODY>
  169. <?
  170. for ($i=10 ; $i>1 ; $i--) {
  171. if ($i == 2 ) { //若?檎? ?束?次的for()?圈, ??下一次for()?圈
  172. continue;
  173. }
  174. echo "$i<br>";
  175. }
  176. ?>
  177. </BODY>
  178. </HTML>
  179. 7. switch (条件) {
  180. case 'case值1':
  181. ?⑹鲆?nbsp; //条件?case值相同,就?部分的?⑹? 直到遇到break才停止
  182. break;
  183. case 'case值2:
  184. ?⑹龆?br /> break;
  185. ............
  186. default:
  187. ?⑹?
  188. break;
  189. }
  190. <HTML>
  191. <HEAD>
  192. <TITLE> SWITCH </TITLE>
  193. </HEAD>
  194. <BODY>
  195. <?
  196. switch ($i) {
  197. case 0:
  198. echo "i equals 0";
  199. case 1:
  200. echo "i equals 1";
  201. case 2:
  202. echo "i equals 2";
  203. }
  204. ?>
  205. </BODY>
  206. </HTML>
  207.  
  208. <HTML>
  209. <HEAD>
  210. <TITLE> Switch - SWITCH </TITLE>
  211. </HEAD>
  212. <BODY>
  213. <?
  214. switch ( $a ) {
  215. case '1':
  216. echo "one";
  217. break;
  218. case '2':
  219. echo "two";
  220. break;
  221. case '3':
  222. echo "three";
  223. break;
  224. case '4':
  225. echo "four";
  226. break;
  227. case '5':
  228. echo "five";
  229. break;
  230. default:
  231. echo "ZERO";
  232. break;
  233. }
  234. ?>
  235. </BODY>
  236. </HTML>

注意事项

PHP 语法中在每条指令结束时都要加上分号 ;,但是在部分结尾符号 } 后面不用加上分号结束.

在流程的部分分隔符号上,都是使用 { 当作部分的开头,用 } 当作结尾,和 C 语言相同.不过 C 可以定义 begin 当开头、end 当结尾 (像 Pascal),而 PHP 中不能做这种特殊的定义.