2010-08-22 14 views
8

posibles duplicados:
How are echo and print different in PHP?
Is there any difference between ‘print’ and ‘echo’ in PHP?
What’s the difference of echo,print,print_r in PHP?Diferencias entre eco, eco(), de impresión y de impresión() en PHP

Hay varias maneras de imprimir la salida de PHP; incluyendo pero no limitado a:

echo 'Hello'; 
echo ('Hello'); 
print 'Hello'; 
print ('Hello'); 

¿Hay alguna diferencia entre estos cuatro? Además, ¿los paréntesis hacen alguna diferencia?

+0

¿Por qué todas las respuestas "duplicadas" conducen a "respuestas duplicadas cerradas como posibles" también? – Bonzo

Respuesta

1

dos diferencias:

print tiene un valor de retorno (siempre 1), echo no. Por lo tanto, print se puede usar como una expresión.

echo acepta múltiples argumentos. Por lo tanto, puede escribir echo $a, $b en lugar de echo $a . $b.

En cuanto a los paréntesis: Son simplemente mal en mis ojos. No tienen ninguna función en absoluto. También podría escribir echo (((((((((($a)))))))))); las personas generalmente incluyen paréntesis de la ignorancia, pensando que print es una función. Además, aumenta las posibilidades de malinterpretación. Por ejemplo, print("foo") && print("bar") no imprime foobar, porque PHP interpreta esto como print(("foo") && print("bar")). Por lo tanto, se imprimirá bar1, aunque se vea diferente.

+0

Sé que Python no es PHP, pero ellos [prohibieron] (http://docs.python.org/release/3.0.1/whatsnew/3.0.html#print-is-a-function) el uso de 'print ' algo'', ahora siempre tiene que usar 'print ('something')' con los paréntesis. – Aillyn

+0

También vea: http://www.ideone.com/LUOOG – Aillyn

+0

No. Hace la diferencia. Aunque produce el mismo resultado, la versión con paréntesis * se ve * diferente. Los paréntesis y funcionan como el formato hacen que se vea diferente. Al menos me engañaría pensando que produce 'foobar', si no me detuviera a pensarlo. – NikiC

Cuestiones relacionadas