답변:
보내는 사람 PHP 매뉴얼 :
PHP에서는 'else if'(두 단어로)를 쓸 수 있으며 동작은 'elseif'(한 단어로)와 동일합니다. 구문 적 의미는 약간 다릅니다 (C에 익숙한 경우 동일한 동작입니다). 그러나 결론은 둘 다 정확히 동일한 동작을 초래한다는 것입니다.
본질적으로 그것들은 동일하게 동작하지만 else if
기술적으로 중첩 구조와 동일합니다.
if (first_condition)
{
}
else
{
if (second_condition)
{
}
}
설명서에는 다음과 같은 참고 사항도 있습니다.
elseif와 else if는 위 예제에서와 같이 중괄호를 사용할 때 정확히 동일하게 간주됩니다. 콜론을 사용하여 if / elseif 조건을 정의 할 때 다른 단어를 두 단어로 분리하지 않아야합니다. 그렇지 않으면 PHP가 구문 분석 오류로 실패합니다.
이는 일반적인 제어 구조 형식 (즉, 중괄호 사용)에서 다음을 의미합니다.
if (first_condition)
{
}
elseif (second_condition)
{
}
하나 elseif
또는 else if
사용할 수 있습니다. 그러나 대체 구문 을 사용하는 경우 다음 을 사용해야합니다 elseif
.
if (first_condition):
// ...
elseif (second_condition):
// ...
endif;
else if
됩니다 else { if {
.
else if
같은 else { if {
그렇지 않으면 당신은 할 수없는 것, if (0) { } else if (0) { } else { }
...
if (0) { } else { if (0) { } else { } }
. 마지막 else
블록 에는 애매 모호함이 없으며 , 항상 완전한 브랜치 (모두 if
가 있음 else
)의 경우입니다.
if ($v1='1'): do_thing(); else: if($v1='b' ): do_another_thing(); else: do_smthing_else(); endif; endif;
과 같은 경우 '콜론'과 내부의 endif를 기억해야합니다 . if ($v1='1'): do_thing(); elseif($v1='b' ): do_another_thing(); else: do_smthing_else(); endif;
Zend 개발자 ( https://github.com/php-fig/fig-standards#voting-members ) 를 포함하는 멤버로 구성된 FIG (Framework Interoperability Group) 는 일련의 표준 권장 사항 (PSR)을 구성했습니다. -#).
Zend2 및 Symfony2는 이미 PSR-0을 따릅니다.
스타일에 대한 단단하고 빠른 규칙은 없지만 가능한 한 많은 PSR-2를 시도하고 따를 수 있습니다.
PSR-2에서 else와 elseif에 대한 의견이 있습니다.
모든 else 키워드가 단일 단어처럼 보이도록 elseif 키워드를 else 대신 사용해야합니다.
일부 권장 사항은 권장 사항입니다. if 또는 elseif를 사용할지 여부는 귀하에게 달려 있습니다.
else if
하는 것은 아닙니다. 예를 들어 VB는을 사용ElseIf
하고 Ruby는을 사용합니다elsif
.