2010-04-23 15 views
5

Entiendo que el eco es un poco más rápido y la impresión se puede utilizar como una función, pero he estado leyendo un libro electrónico en PHP y el escritor está usando imprimir, en lugar de eco, para generar texto muy simple.¿Cuándo debo usar print en lugar de echo en PHP?

print "Your name is $name\n"; 

Así que mi pregunta es, ¿cuándo sería apropiado para mí usar impresión en lugar de eco?

+0

Duplicados **: ** http://stackoverflow.com/questions/234241/how-are-echo-and-print-different-in-php http://stackoverflow.com/questions/1006586/is- there-any-difference-between-print-and-echo-in-php-closed http://stackoverflow.com/questions/1504797/php-echo-print-printf –

+0

No del todo duplicados, en realidad. Esos están preguntando las diferencias, mientras que cuando estoy preguntando cuándo sería apropiado diferenciar. – Rob

+0

Rob, será mejor que te hagas otra pregunta, un poco más útil. –

Respuesta

6

Nunca.

Definitivamente una micro optimización.

Algunos les puede resultar útil como el e imprimirtrick. Pero feo como el infierno y no recomendado.

+0

¿Puede elaborar un poco por favor? – Rob

+0

Ah, ya veo. Parece más fácil que un isset, pero tienes razón, es feo como el infierno. – Rob

+0

Sin embargo, aparte de la fealdad, ¿por qué no lo recomiendas? ¿Hay algún inconveniente? – Rob

0

Realmente no importa. Este tipo de optimización es la mayoría de las veces de micro optimización, que la mayoría de las veces es infructuosa.

+0

no "la mayoría de las veces", sino para siempre. –

+0

Bueno, quizás haya algunos bordes oscuros donde marcaría la diferencia, pero "la mayoría de las veces" no es así. – Ikke

+0

¿Puedes nombrar uno? –

1

print y echo son comandos utilizados para mostrar información en la pantalla de visitantes (en la página web). Ambos hacen el mismo trabajo, por lo que generalmente se trata de una cuestión de preferencia personal sobre cuál te gusta usar.

Existe una pequeña diferencia entre la impresión y el eco, que dependerá de cómo desee utilizar el resultado. El uso del método de impresión puede devolver un valor verdadero/falso. Esto puede ser útil durante la ejecución de una secuencia de comandos de somesort. Echo no devuelve un valor, pero se ha considerado como un comando ejecutado más rápido. Todo esto puede entrar en una discusión bastante complicada, así que por ahora, puedes usar cualquiera que prefieras.

+0

Usted * no puede * obtener verdadero/falso con impresión. Del manual: "Devuelve 1, siempre" (ni siquiera es booleano). – binaryLV

0

En mi humilde opinión, la principal diferencia es que puede imprimir múltiples valores con echo sin concatenarlos, es decir, echo $a, $b, $c;. Por lo que yo sé, no es posible hacer esto con print. Si desea utilizar esta sintaxis (y le aconsejo usarla siempre que sea posible, aunque no estoy 100% seguro de que sea más rápida en aplicaciones del mundo real), sería mejor que siempre use echo, como mezcla ambos caminos conducirían a la inconsistencia.

Cuestiones relacionadas