(PHP 4, PHP 5, PHP 7, PHP 8)
  elseif, comme son nom l'indique, est une combinaison
  de if et de else. Comme l'expression
  else, il permet d'exécuter une instruction
  après un if dans le cas où le "premier"
  if est évalué comme false. Mais,
  à la différence de l'expression else,
  il n'exécutera l'instruction que si l'expression conditionnelle
  elseif est évaluée comme
  true. L'exemple suivant affichera
  a est plus grand que b,
  a est égal à b ou
  a est plus petit que b :
  
<?php
if ($a > $b) {
    echo "a est plus grand que b";
} elseif ($a == $b) {
    echo "a est égal à b";
} else {
    echo "a est plus petit que b";
}
?>
  Vous pouvez avoir plusieurs elseif qui se suivent
  les uns après les autres, après un if initial.
  Le premier elseif qui sera évalué
  à true sera exécuté. En PHP, il est possible d'écrire
  else if en deux mots et son comportement sera identique
  à celle de elseif (en un seul mot). La sémantique
  des deux expressions est légèrement différente (tout comme en C), mais au bout du compte,
  le résultat sera exactement le même.
 
  L'expression elseif est exécutée
  seulement si le if précédent et tout
  autre elseif précédent sont
  évalués comme false, et que
  votre elseif est évalué à
  true.
 
Note: A noter que
elseifetelse ifsont traités de la même façon seulement quand des accolades sont utilisées, comme dans l'exemple ci-dessus. Quand vous utilisez ":" pour définir vos conditionsif/elseif, l'utilisation deelseifen un seul mot devient nécessaire. PHP échouera avec une erreur d'analyse sielse ifest utilisé.
<?php
/* Mauvaise méthode : */
if ($a > $b):
    echo $a." est plus grand que ".$b;
else if ($a == $b): // ne compilera pas
    echo "La ligne ci-dessus provoque une erreur d'interprétation";
endif;<?php
/* Bonne méthode : */
if ($a > $b):
    echo $a." est plus grand que ".$b;
elseif ($a == $b): // Les deux mots sont collés
    echo $a." égal ".$b;
else:
    echo $a." est plus grand ou égal à ".$b;
endif;
?>