> Faqs > Diferencias entre cadenas en PHP con comillas simples y dobles

Diferencias entre cadenas en PHP con comillas simples y dobles

Hola. Quisiera saber cuál es la diferencia entre usar comillas simples y dobles en PHP.

¿Podemos usar ambas en cualquier situación?

Si son diferentes. ¿Cuál sería la mejor alternativa? ¿qué buenas prácticas existen en el uso de comillas simples y comillas dobles en PHP?

Respuestas

Si bien es cierto que puedes usar tanto comillas dobles como simples en PHP sí que hay algunas diferencias significativas.

  • Las comillas dobles permiten interpolación de variables en la propia cadena, lo que permite embeber el contenido de variables dentro de las cadenas con una sintaxis muy limpia.
$cadena = "Federico tiene {$years} años y ${days} días.";

Esa misma sentencia, si usas comillas simples la tendrías que expresar de una manera más compleja y menos legible:

$cadena = 'Federico tiene' . $years . ' años y ' . $days . ' días';

Quizás no parezca mucha diferencia, pero cuando se trata de cadenas que embeben varias variables, la cosa va adquiriendo importancia.

  • Los caracteres de escape de las cadenas dobles en PHP son mucho más enriquecidos.

En una cadena con comillas dobles hay diferentes caracteres de escape, por ejemplo \n para un salto de línea o \t para un tabulador. Esto no está permitido en las cadenas de comillas simples, donde sólo se pueden colocar caracteres de escape para la comilla simple ' y para la propia barra invertida \. En las comillas simples los caracteres de escape, por ejemplo un salto de línea, se tienen que incorporar directamente, haciendo un salto en el propio literal de la cadena.

Buenas prácticas

Con respecto a lo que serían las buenas prácticas se recomienda usar cadenas simples, ya que este tipo de cadenas requieren menor cantidad de procesamiento por el motor de PHP, que no tiene que realizar interpolaciones y reconocer caracteres de escape.

Sin embargo, si lo que quieres es justamente beneficiarte del interpolado de variables, entonces lo adecuado es que uses las cadenas encerradas con comillas dobles, ya que la sintaxis que se consigue es más legible.

Alberto
580 14 40 18

Las cadenas (valores de tipo string) en PHP se pueden delimitar con comillas dobles o simples. No hay problema en usar una u otra manera.

Puedes usar ambas en cualquier situación.

Alba
355 9 25 13