W3docs

echo()

La palabra clave "echo" en PHP se usa para mostrar una o más cadenas. Explora su sintaxis y uso en este artículo.

La instrucción echo de PHP

echo es la forma más común de enviar salida desde un script PHP a la página. Es una construcción del lenguaje, no una función, por lo que no tiene valor de retorno y no necesita paréntesis para usarla. Usarás echo constantemente: para imprimir texto, mostrar los valores de variables y escribir HTML.

Esta página cubre la sintaxis, el comportamiento de las comillas simples vs. dobles que confunde a los principiantes, la etiqueta corta <?= ?> y las diferencias entre echo y print.

Sintaxis

echo expression;
echo expression1, expression2, ...;

Como echo es una construcción del lenguaje, se usa sin paréntesis:

echo "Hello";        // correct
echo("Hello");       // also works for a SINGLE argument
echo("a", "b");      // PARSE ERROR — parentheses can't wrap multiple args
echo "a", "b";       // correct way to pass multiple arguments

Pasa múltiples valores separándolos con comas — esto es ligeramente más rápido que concatenar con . porque no se crea una cadena temporal. Los valores se imprimen uno tras otro sin separador.

Ejemplos

Veamos algunos ejemplos prácticos de cómo se puede usar la palabra clave echo:

Ejemplos de echo en PHP

<?php

// Example 1: Comma-separated arguments (native syntax)
echo "Hello World!", PHP_EOL;

// Output: Hello World!

// Example 2: String concatenation
$myName = "John";
$myAge = 30;
echo "My name is " . $myName . " and I am " . $myAge . " years old.";

// Output: My name is John and I am 30 years old.

// Example 3: Variables without quotes (comma-separated)
$greeting = "Hello";
$name = "World";
echo $greeting, " ", $name, "!";

// Output: Hello World!

Comillas Simples vs. Comillas Dobles

El estilo de comillas que elijas cambia cómo se manejan las variables, por lo que conviene aprender esto desde el principio. En los strings con comillas dobles, PHP interpola variables y secuencias de escape. En los strings con comillas simples, no lo hace — el texto se imprime literalmente.

<?php

$name = "World";

echo "Hello $name\n";   // Hello World  (variable is interpolated)
echo 'Hello $name\n';   // Hello $name\n  (printed verbatim, no newline)

Usa comillas dobles cuando quieras interpolación de variables; usa comillas simples (ligeramente más rápidas) cuando tengas texto literal sin variables. Consulta PHP Strings para conocer las reglas completas, incluida la sintaxis con llaves como "{$user['name']}".

Imprimir HTML con echo

Una tarea muy común para echo es imprimir HTML. Puedes incrustar variables directamente dentro del marcado:

<?php

$title = "Welcome";
echo "<h1>$title</h1>";
// Output: <h1>Welcome</h1>

Para bloques grandes de HTML, generalmente es más limpio salir completamente de PHP (?> ... <?php) que usar echo en cada línea.

La Etiqueta Echo Corta

La forma abreviada <?= ... ?> es exactamente equivalente a <?php echo ... ?>. Está habilitada por defecto en todas las versiones de PHP compatibles y es ideal para plantillas:

<p>Hello, <?= $name ?>!</p>

Esta es la forma recomendada de imprimir un único valor dentro de archivos que son principalmente HTML.

echo vs. print

echo y print son similares, pero tienen diferencias:

echoprint
Tipoconstrucción del lenguajeconstrucción del lenguaje
Valor de retornoninguno (void)siempre 1
Múltiples argumentossí (echo $a, $b;)no
Uso en una expresiónnosí (porque devuelve un valor)

Como print devuelve 1, puede aparecer dentro de una expresión: $ok = print "hi";. echo no puede. En la práctica, echo es preferido para la salida general. Consulta la comparación dedicada echo vs print y la referencia de print para más detalles.

Errores Comunes

  • Sin paréntesis con múltiples argumentos. echo("a", "b"); es un error de sintaxis; usa echo "a", "b";.
  • echo no devuelve nada. No puedes escribir $x = echo "hi";. Usa print (o sprintf()) si necesitas un valor.
  • Las comillas simples no interpolan. echo 'Total: $price'; imprime el literal $price, no el valor de la variable.

Práctica

Práctica
¿Qué hace la instrucción 'echo' de PHP?
¿Qué hace la instrucción 'echo' de PHP?
Was this page helpful?