各种语言中 elseif 与 else if 都有什么区别呢?
php中好像是一样的
js中好像只有else if
c语言把 else if 写成 elseif 会报错
在写PHP代码的时候,发现 else if 和 elseif 都可以使用, 两种语法都不会报错, 他们的区别其实很小。
elseif 与 else if 只有在类似下例中使用花括号的情况下才认为是完全相同。如果用 : 冒号来定义 if/elseif 条件,那就不能用两个单词的 else if,否则 PHP 会产生解析错误。
也就是说,只要加上花括号,它们其实就没有区别。如:
if ($a > $b) {
echo 'a > b';
} elseif ($a == $b) {
echo 'a = b';
} else if ($a < $b) {
echo 'a < b';
}
反之如果使用 : 冒号来定义的话,那就只能使用 一个单词的 elseif 了。如:
/* 不正确的使用方法: */
if($a > $b):
echo $a." is greater than ".$b;
else if($a == $b): // 将无法编译
echo "The above line causes a parse error.";
endif;
/* 正确的使用方法: */
if($a > $b):
echo $a." is greater than ".$b;
elseif($a == $b): // 注意使用了一个单词的 elseif
echo $a." equals ".$b;
else:
echo $a." is neither greater than or equal to ".$b;
再补充一个例子:
/* 正确的使用方法: */
<?php if ($a == 5): ?>
等于5
<?php elseif ($a == 6): ?>
等于6
<?php else: ?>
不是5就是6
<?php endif; ?>
我之前都是混用的,反正看着不出错,原来还有冒号那种写法,学到了。
我之前只用 else if,改别人的判断的时候都想自己重写。