PHP switch语句


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

PHP switch语句简介

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
switch(variable){
case value1:
// 当变量variable值为value1时执行的代码块
break;
case value2:
// 当变量variable值为value2时执行的代码块
break;
 
default:
// 默认执行代码块
break;
}

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

PHP switch语句示例

1
2
3
4
5
6
7
8
9
10
11
12
<?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语句还允许您将变量和表达式与许多不同的字符串值进行比较。
例如:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?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语句:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$command = '关闭';
$message = '';
switch ($command) {
case '保存':
$message = '保存文章';
break;
case '打开':
$message = '打开文章';
break;
case '关闭':
case '退出':
$message = '确定不保存文章吗?';
break;
}
echo $message;

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


原文链接:https://codingdict.com/