La respuesta esta en el
manual, y cito:
Código PHP:
Ver original// Ya que echo no se comporta como una función el siguiente código no es válido.
($some_var) ? echo 'true' : echo 'false';
// De todas formas el siguiente código funcionará:
($some_var) ? print 'true' : print 'false'; // print también es un constructor, pero
// se comporta como una función, entonces
// puede usarse en este contexto.
Edito:
te dejo una
curiosidad, al parecer echo es mas rapido :).
Saludos.