68 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			68 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | title: PHP Switch | |||
|  | localeTitle: PHP开关 | |||
|  | --- | |||
|  | ## PHP开关
 | |||
|  | 
 | |||
|  | PHP中的`switch`语句类似于同一表达式上的一系列`if`语句。 `switch`语句用于在不同条件下执行不同的操作。 `switch`语句的语法如下 | |||
|  | ``` | |||
|  | switch (expression) {  | |||
|  |   | |||
|  |     case label1:  | |||
|  |         // code block to be executed if there is a match with result of expression  | |||
|  |         break;  | |||
|  |     case label2:  | |||
|  |         // code block to be executed if there is a match with result of expression  | |||
|  |         break;  | |||
|  |     case label3:  | |||
|  |         // code block to be executed if there is a match with result of expression  | |||
|  |         break;  | |||
|  |     default:  | |||
|  |         // code block to be executed if there is no match with result of expression  | |||
|  |   | |||
|  |  }  | |||
|  | ``` | |||
|  | 
 | |||
|  | 当我们运行程序时,将评估`switch`语句中的表达式。如果存在匹配则使用相应的标签检查该表达式的结果,然后执行相应的`case`块。如果未找到任何case语句的匹配项,则仅执行`default`后面的代码块。 | |||
|  | 
 | |||
|  | `switch`声明的例证与一个例子的 | |||
|  | ``` | |||
|  | <?php  | |||
|  |   | |||
|  |  $i = 1  | |||
|  |  switch ($i) {  | |||
|  |     case 0:  | |||
|  |         echo "i equals 0";  | |||
|  |         break;  | |||
|  |     case 1:  | |||
|  |         echo "i equals 1";  | |||
|  |         break;  | |||
|  |     case 2:  | |||
|  |         echo "i equals 2";  | |||
|  |         break;  | |||
|  |  }  | |||
|  |   | |||
|  |  ?>  | |||
|  | ``` | |||
|  | 
 | |||
|  | `switch`语句也可以在没有`break`语句的情况下使用。在这种情况下,匹配案例之后的陈述将被执行。下面是没有`break`语句的`switch`语句的用法。 | |||
|  | ``` | |||
|  | <?php  | |||
|  |  switch ($i) {  | |||
|  |     case 0:  | |||
|  |         echo "i equals 0";  | |||
|  |     case 1:  | |||
|  |         echo "i equals 1";  | |||
|  |     case 2:  | |||
|  |         echo "i equals 2";  | |||
|  |  }  | |||
|  |  ?>  | |||
|  |   | |||
|  |  /*output --> i equals 0i equals 1i equals 2 */  | |||
|  | ``` | |||
|  | 
 | |||
|  | #### 更多信息:
 | |||
|  | 
 | |||
|  | [Switch语句 - PHP文档](http://php.net/manual/en/control-structures.switch.php) | |||
|  | 
 | |||
|  | [PHP5 Switch - W3Schools](https://www.w3schools.com/php/php_switch.asp) |