1.14.4 elseif语句

需要做出多个决定时,这些决定可能有多于两个的选项。我们可以使用elseif语句来建立一个多选项序列。elseif语句是else和if语句的结合。通过提供一系列的条件,程序将检查每一个条件,直到其找到一个为true的条件。

Bob为轮胎订单的大客户准备了一定的折扣。其折扣方案如下所示。

■购买少于10个:没有折扣

■购买10~49个:5%的折扣

■购买50~99个:10%的折扣

■购买100个以上:15%的折扣

可以使用条件表达式以及if和elseif语句来编写计算折扣的代码。这个例子必须使用“与”操作符(&&)将两个条件结合成一个条件。


if($tireqty<10){

$discount=0;

}elseif(($tireqty>=10)&&($tireqty<=49)){

$discount=5;

}elseif(($tireqty>=50)&&($tireqty<=99)){

$discount=10;

}elseif($tireqty>=100){

$discount=15;

}


请注意,这里可以将elseif语句随意写成elseif或else if——中间的空格是可有可无的。

如果要编写一系列的级联elseif语句,应该注意到,其中只有一个语句块将被执行。在这个例子中,对程序结果的计算并没有太大的关系,因为这些条件都是互斥的——每次都只有一个条件为true。如果编写的条件语句其值同时为true的不止一个,那么只有第一个为true的条件下的语句或语句块将被执行。