PHP switch语句

时间:2018-11-15 13:16:22  来源:igfitidea点击:

在本教程中,我们将学习如何使用PHP switch语句,switch语句提供了另外一种根据条件执行代码块的方法。

PHP switch语句简介

除了if语句之外,PHP还提供了switch语句,允许您根据条件执行代码块。PHP switch语句将变量或表达式与许多不同的值进行比较,并根据其等于的值执行代码块。

下面说明了switch语句的语法:

<?php
switch(variable){
 case value1: 
 // 当变量variable值为value1时执行的代码块
 break;
 case value2: 
 // 当变量variable值为value2时执行的代码块
 break;
 
 default:     
 // 默认执行代码块
 break;
}

switch语句是逐语句执行的,理解这一点非常重要,因此case构造的顺序非常重要。
如果变量的值与case结构中的值匹配,PHP将执行该case结构中的代码块,并由于break语句而结束switch语句。

PHP switch语句示例

<?php
$x = rand(0,3);
switch($x){
 case 0: echo 'x 等于 0';
 break;
 case 1: echo 'x 等于 1';
 break;
 case 2: echo 'x 等于 2';
 break;
 case 3: echo 'x 等于 3';
 break;
}

首先,我们得到一个从0到3的随机数,并将它赋给$x变量。然后我们将$x的值与0、1、2和3进行比较,如果$x等于其中一个数字,则显示相应的消息。

在PHP中,switch语句还允许您将变量和表达式与许多不同的字符串值进行比较。
例如:

<?php
$tech = 'PHP';
$msg = '';
switch($tech){
 case 'PHP':
 $msg =  'PHP 是世界上最好的编程语言';
 break;
 case 'Perl':
 $msg = 'Perl 很酷';
 break;
 case 'Python':
 $msg = 'Perl 很优美';
 break;
 case 'Java/JSP':
 $msg = 'JSP 很健壮';
 break;
 case 'C#/ASP.NET':
 $msg = 'C#/ASP.NET 很棒';
 break;
 default:
 $msg = '你在用什么技术?';
 break;
}
 
echo $msg;

break语句放在每一个case结构的结尾,以退出整个switch语句。
如果要在变量或表达式与不同值之一匹配时执行操作,可以像下面这样使用break语句:

<?php

$command = '关闭';
$message = '';
switch ($command) {
 case '保存':
 $message = '保存文章';
 break;
 case '打开':
 $message = '打开文章';
 break;
 case '关闭':
 case '退出':
 $message = '确定不保存文章吗?';
 break;
}
echo $message;

当$command是关闭或者退出时,脚本将显示相同的消息。