¿Cúando utilizar comillas simples y dobles en PHP?

os 2 tipos de comillas utilizados en PHP (comillas 'simples' y comillas “dobles”) nos sirven para encerrar cadenas de texto dentro de una variable, pero esto lo deben saber todos, la pregunta del año seria: ¿Cuando debemos utilizar comillas simples y dobles? , en este artículo detallaremos todas las posibilidades en que se deben usar cada una.

¿Cuándo utilizar comillas simples?

Esta es la respuesta sencilla, al momento de encerrar una cadena para guardarla en una variable, tenemos que ver si tiene algo más que simple texto, pueden ser caracteres para saltos de linea (n) o tabulacion (t), también podemos incluir una variable dentro de esa cadena.
Si no tenemos ninguna de estas necesidades entonces la respuesta es: si debo utilizar 'Comillas Simples'.

¿Cuándo utilizar comillas dobles?

Las comillas dobles por el contrario de las simples, nos permiten poner caracteres especiales que lo interpretara y nos dará como resultado la cadena con formato.
Al poner una variable o un objeto dentro de una cadena es necesario que la esté dentro de las comillas dobles, de lo contrario no interpretara la variable.

echo "Bienvenido $name!";
//> Bienvenido Cesar

echo "Bienvenido $user->name!";
//> Bienvenido Cesar

Si queremos pintar el valor de un array dentro de una cadena, hay que encerrar el arreglo con unas llaves:

echo "Bienvenido {$user['name']}!";
//> Bienvenido Cesar!

Si no queremos utilizar las llaves o no queremos usar comillas dobles estas son otras alternativas:

echo "Bienvenido " . $user['name'] . "!";

echo 'Bienvenido ' . $user['name'] . '!';

echo sprintf("Bienvenido %s!", $user['name']);

Utilizando comillas dentro de comillas

Si bien elegimos una de las 2, y nuestra cadena necesita pintar comillas del mismo tipo, estas deberán tener la barra invertida () para que la procese como simple texto.

Este es un ejemplo de pintar un TAG HTML con PHP:

echo 'Eliminar';

Vemos primeramente que todo esta encerrado por comillas simples, esto porque los tags html tiene muchas comillas dobles para los atributos, siempre debemos evaluar esto para no utilizar muchos escapes de comillas ().

Vemos que la variable $id esta encerrada por una función addslashes(), como su nombre lo dice pondrá las barras invertidas () pero solamente al encontrar una comilla, esto no sucedería en nuestro caso ya que los id por lo general son numéricos, pero si fuera una cadena como un titulo por ejemplo, es bueno ponerle esta función.

Espero sus comentarios y sugerencias, si tienen algún aporte que compartir, bienvenido sea!

zp8497586rq

También te puede interesar

2 Comments

  1. caos30
    ene 18, 2010 @ 19:34:21

    En todo caso el nombre de la función que añade “escape” para las comillas será “addslashes” y no “add_slashes”, ¿no? Igual se me escapa algo, pero creo que la añadiste “_” equivocadamente.

    Por otra parte me gusta como has introducido el tema para los más novatos, con un texto claro y unos ejemplos claros.

    Yo también escribí un pequeño artículo en mi blog hace unos 7 meses, dando una vuelta de rosca al tema de “las comillas dentro de comillas”, en particular cuando todas ellas tienen que ir en HTML o javascript. Escribí el artículo porque descubrí un tema “peliagudo” al respecto, del que no me había percatado en los más de 10 años que llevo haciendo webs :S

    Por si alguien le quiere echar un vistazo:
    http://crear-paginas-web.blogspot.com/2009/06/comillas-dobles-y-simples-en-html-input.html

    Espero que el autor vea la oportunidad del enlace para el tema que se trata, y no con intenciones de spam ;)

    Un saludo!
    Buen blog… te sigo por RSS desde hace unos cuantos meses! :)
    SERGI

  2. craftyman
    ene 19, 2010 @ 08:39:56

    @caos30, gracias por la correción, ya esta actualizado el post.

    No veo tu articulo con intenciones de SPAM, por el contrario es un aporte más.

    Gracias y Saludos.