Porque esta dentro de donde se verifica la condicion, entiendes. Y eso no se muestra.
"Literal" forma parte de la comprobacion (auque no sea tu intencion), y no interfiere, o sea no convierte en falsa a la condicion.
Agrego corchetes para delimitar:
Código PHP:
echo [ "literal " . ($al == 5) ] ? 'verdadero' : 'falso';
Saludos...!