Se metti var_dump($neonat); cosa ottieni?

Visto che ci sono molti elseif, sei sicuro che il codice arrivi a valutare la condizione ($neonat!==false)?