醉丶春风的Blog

千里之行, 始于足下



php中elseif 和 else if的关系


 (PHP 4, PHP 5)

elseif,和此名称暗示的一样,是 if 和 else 的组合。和 else 一样,它延伸了 if 语句,可以在原来的 if 表达式值为 FALSE 时执行不同语句。但是和else 不一样的是,它仅在 elseif 的条件表达式值为 TRUE 时执行语句。例如以下代码将根据条件分别显示 a is bigger than ba equal to b 或者 a is smaller than b

$a = 100;
if($a == 1){
  echo 1;
}else if ($a == 10) {
  echo 10;
}else if ($a == 100) {
  echo 100;
}

上面的结果和下面的结果一模一样

if($a == 1){
  echo 1;
}elseif ($a == 10) {
  echo 10;
}elseif ($a == 100) {
  echo 100;
}

在同一个 if 语句中可以有多个 elseif 部分,其中第一个表达式值为 TRUE(如果有的话)的 elseif 部分将会执行。在 PHP 中,
也可以写成“else if”(两个单词),它和“elseif”(一个单词)的行为完全一样。
句法分析的含义有少许区别(如果你熟悉 C 语言的话,与之行为相同),但是底线是两者会产生完全一样的行为。

 Note: 必须要注意的是 elseif 与 else if 只有在类似上例中使用花括号的情况下才认为是完全相同。
如果用冒号来定义 if/elseif 条件,那就不能用两个单词的 else if,否则 PHP 会产生解析错误。

/* 不正确的使用方法: */
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;
endif;



作者: 徐善通
地址: https://www.xstnet.com/article-53.html
声明: 除非本文有注明出处,否则转载请注明本文地址


我有话说



最新回复


正在加载中....

Copyrights © 2016-2019 醉丶春风 , All rights reserved. 皖ICP备15015582号-1