## elseif/else if

(PHP 4, PHP 5, PHP 7, PHP 8)

`elseif`, como o nome sugere, é uma combinação do `if` e `else`. Como o `else`, estende um `if` para executar instruções diferentes no caso da expressão `if` original ser avaliada como `false`. Entretanto, diferentemente do `else`, executará uma expressão alternativa somente se a expressão condicional do `elseif` for avaliada como `true`. Por exemplo, o código a seguir exibirá a é maior que b, a é igual a b ou a é menor que b:

    <?php
    if ($a > $b) {
        echo "a é maior que b";
    } elseif ($a == $b) {
        echo "a é igual a b";
    } else {
        echo "a é menor que b";
    }
    ?>

Pode haver vários `elseif`s dentro da mesma instrução `if`. A primeira expressão `elseif` (se houver) que retornar `true` será executada. No PHP, pode-se escrever `else if` (em duas palavras), e o comportamento será idêntico ao do `elseif` (em uma única palavra). O significado sintático é um pouco diferente (se você está familiarizado com C, mas, no final, ambos terão exatamente o mesmo comportamento.

O `elseif` só é executado se o `if` precedente ou qualquer `elseif` for avaliado como `false`, e o `elseif` corrente for avaliado como `true`.

> Nota: Note que o `elseif` e `else if` só serão considerados exatamente iguais se usados com chaves como no exemplo abaixo. Ao utilizar os dois pontos (:) para definir as condições de `if`/`elseif`, então o uso de `elseif` como uma única palavras se torna necessário, ou o PHP falhará com um erro de interpretação se `else if` estiver separado em duas palavras.

    <?php

    /* Método Incorreto: */
    if ($a > $b):
        echo $a." é maior que ".$b;
    else if ($a == $b): // Não irá compilar.
        echo "A linha acima causa um erro de análise.";
    endif;

    <?php
    /* Método Correto: */
    if ($a > $b):
        echo $a." é maior que ".$b;
    elseif ($a == $b): // Note a combinação das palavras.
        echo $a." é igual a ".$b;
    else:
        echo $a." não é maior nem igual a ".$b;
    endif;

    ?>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open