Sé que esta es una vieja pregunta, pero creo que alguien tiene que mencionar todos los pros y contras:
Mejor sintaxis : esa es la preferencia personal.
Rendimiento : no hay diferencia. Como muchos mencionaron, la comilla doble podría ser más rápida si se usan muchas variables poco realistas.
Mejor uso : comilla simple (principalmente). Como dijo @Khez, la comilla simple puede concatenar cualquier cosa, incluso las llamadas de función y variable modificación, así: echo 'hi ' . trim($name) . ($i + 1);
. Lo único comillas dobles puede hacer que comilla simple no puede hacer es el uso de \n
, \r
, \t
y similares.
Legibilidad : no hay diferencia (puede aplicarse preferencia personal).
Posibilidad de escritura / reescritura / depuración : en las declaraciones de 1 línea no hay diferencia, pero cuando se trata de varias líneas, es más fácil comentar / descomentar líneas mientras se depura o escribe. Por ejemplo:
$q = 'SELECT ' .
't1.col1 ' .
',t2.col2 ' .
//',t3.col3 ' .
'FROM tbl1 AS t1 ' .
'LEFT JOIN tbl2 AS t2 ON t2.col2 = t1.col1 ' .
//'LEFT JOIN tbl3 AS t3 ON t3.col3 = t2.col2 ' .
'WHERE t1.col1 = ' . $x . ' ' .
' AND t2.col2 = ' . $y . ' ' .
//' AND t3.col3 = ' . $z . ' ' .
'ORDER BY t1.col1 ASC ' .
'LIMIT 10';
Menos escape : comilla simple. Para comillas simples, necesita escapar solo de 2 caracteres ( '
y \
). Para una comilla doble, debe escapar 2 caracteres ( "
, \
) y 3 más si es necesario ( $
, {
y }
).
Menos cambios : comilla simple. Por ejemplo, si tiene el siguiente código:
echo 'Number ' . $i . '!';
Y necesita incrementar 1 a $ i, para que se convierta en Me gusta:
echo 'Number ' . ($i + 1) . '!';
Pero para una cita doble, deberá cambiar esto:
echo "Number $i!";
a esto:
echo "Number " . ($i + 1) . "!";
Conclusión : usa lo que prefieras .
echo 'Welcome '.$name.'!';