Por qué se le pone \

Iniciado por ccrunch, 12 Octubre 2013, 19:41 PM

0 Miembros y 1 Visitante están viendo este tema.

ccrunch

En un ejemplo vi esto:

<?php
$x 
30;
print 
"<p style=\"font-size: " $x "px\" >Texto grande</p>\n";
?>


y da como resultado esto:

Citar<p style="font-size: 30px" >Texto grande</p>

Por qué después de los 2 puntos después de size hay ", antes de px otra vez ", y luego de \ otra "?

Y por que después de = hay una \ y después de px otra?

#!drvy

Para escapar el caracter. Sino, PHP lo interpretaria como parte del codigo y no como parte del string.

Secuencias de escape
http://php.net/manual/es/regexp.reference.escape.php
http://php.net/manual/es/language.types.string.php

Saludos

ivancea96

Código (php) [Seleccionar]
<?php
$x 
30;
print 
"<p style=\"font-size: " $x "px\" >Texto grande</p>\n";
?>


'\'+carácter se pone cuando quieres distinguir entre texto y una instrucción.

En ese ejemplo, si no se pone el '\', la sentencia quedaría así:
Código (php) [Seleccionar]
print "<p style=" Las comillas serían parte del código, y cerraría "print". Al poner la '\', se interpreta como un caracter para imprimir.

Se usa también para otros lenguajes. \", \\, \^ son algunos ejemplos.
(\\ imprime una \)

ccrunch

Citar"<p style=\"font-size: \" . $x . \"px\" >Texto grande</p>\n";
Vale, y por qué solo lo pones antes de "font-size y después de px?

No tendrías que ponerlo también después de size: ", después de . "px\"?

Y el \n es para una nueva línea?


Slava_TZD



The fact is, even if you were to stop bombing us, imprisoning us, torturing us, vilifying us, and usurping our lands, we would continue to hate you because our primary reason for hating you will not cease to exist until you embrace Islam.

#!drvy

Lo que pasa entre size:" y "px es una Concatenación.

Saludos

ccrunch

Vale, ahora lo he pillado.

Gracias a todos (y por las respuestas tan rápidas).