ELSEIF

ELSEIF, 它就象名字暗示的,是IF和ELSE的组合。类似于 ELSE,它扩展 IF 语句以在原始的IF表达式为 FALSE时执行其他的语句。但与ELSE不同,它只在ELSEIF表达式也为TRUE时执行其他语句。例如,下面程序当 $a 大于 $b时显示 'a is bigger than b', 当 $a等于 $b时显示 'a is equal to b',当$a 小于 $b 时显示 'a is smaller than b' :

if ($a > $b) {
    print "a is bigger than b";
} elseif ($a == $b) {
    print "a is equal to b";
} else {
    print "a is smaller than b";
}

可以在一条IF语句中使用多条ELSEIF语句。第一个ELSEIF表达式为TRUE的语句将被执行。在PHP 3中,你也可以写成'else if' (写成两个单词)和 'elseif' (写成一个单词)效果一样。这只是写法上的细小差别(如果你熟悉 C,它也是),结果是完全一样的。

ELSEIF语句仅在IF表达式和任何前面的ELSEIF表达式都为FALSE,且当前ELSEIF表达式为TRUE时执行。

IF语句的交替格式: IF(): ... ENDIF;

PHP 3 允许用另外一种办法在IF语句中使用一组语句。这通常用于你嵌套一段HTML代码块 于IF语句里,但也可以用于任何地方。IF(expr) 后面必须用一个冒号取代原来的大括号 ,后跟一条或几条语句组成的语句组,并以ENDIF结束;考虑下面例子:

<?php if ($a==5): ?>
A = 5
<?php endif; ?>

上例中,HTML代码块 "A = 5" 嵌套在一个IF语句内,这段HTML代码仅在 $a等于5时显示 。

交替语法也可应用于ELSE 和 ELSEIF (expr) 。下面就是一个含有ELSEIF和ELSE的交替格式的IF语句:  

if ($a==5):
    print "a equals 5";
    print "...";
elseif ($a==6):
    print "a equals 6";
    print "!!!";
else:
    print "a is neither 5 nor 6";
endif;