elseif, 이 이름에서 알수 있듯이,
if와 else의 조합이다.
else처럼 이 구문은 if절
다음에 와서 원래 if표현식이 FALSE
와 같은 경우에
다른 구문을 수행한다. 그러나, else와는 달리
elseif조건 표현식이 TRUE
일 때만 대체 표현식을
수행할것이다. 예를 들면 다음 코드는 a는 b보다 크다,
a는 b와 같다나
a는 b보다 작다을 출력할것이다.
<?php
if ($a > $b) {
echo "a는 b보다 크다";
} elseif ($a == $b) {
echo "a는 b와 같다";
} else {
echo "a는 b보다 작다";
}
?>
같은 if절 안에 몇개의 elseif절이
존재할수 있다. 가장 먼저 TRUE
가 되는 elseif표현식이
수행될것이다. PHP에서는 'else if' (두 단어)로 쓸수 있고 'elseif' (한 단어)
와 방식은 같다. 문장적(syntactic)으로는 다르다 (C에 익숙하다면,
이것은 같은 방식이다) 그러나 그 둘 모두 완전히 같은 결과를 보여줄것이다.
elseif절은 선행 if 표현식과
다른 elseif표현식이 FALSE
이고,
이 elseif표현식이 TRUE
일때만 수행된다.
Note: elseif와 else if은 위 예제처럼 대괄호를 사용할 때 정확히 같은 구문으로 간주됩니다. if/elseif 조건을 콜론을 사용해서 정의할 때, else if 처럼 두 단어로 나눠서는 안됩니다. PHP는 처리 오류로 실패합니다.
<?php
/* 부적합한 방법: */
if($a > $b):
echo $a." is greater than ".$b;
else if($a == $b): // 컴파일 되지 않습니다.
echo "위 줄은 처리 오류를 일으킵니다.";
endif;
/* 적합한 방법: */
if($a > $b):
echo $a." is greater than ".$b;
elseif($a == $b): // 단어가 붙어 있는 점에 주의.
echo $a." equals ".$b;
else:
echo $a." is neither greater than or equal to ".$b;
endif;
?>