Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: ccrunch en 12 Octubre 2013, 19:41 PM

Título: Por qué se le pone \
Publicado por: ccrunch en 12 Octubre 2013, 19:41 PM
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?
Título: Re: Por qué se le pone \
Publicado por: #!drvy en 12 Octubre 2013, 19:45 PM
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
Título: Re: Por qué se le pone \
Publicado por: ivancea96 en 12 Octubre 2013, 19:47 PM
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 \)
Título: Re: Por qué se le pone \
Publicado por: ccrunch en 12 Octubre 2013, 19:50 PM
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?

Título: Re: Por qué se le pone \
Publicado por: Slava_TZD en 12 Octubre 2013, 19:52 PM
Dot operator (http://php.net/manual/es/language.operators.string.php)
Título: Re: Por qué se le pone \
Publicado por: #!drvy en 12 Octubre 2013, 19:57 PM
Lo que pasa entre size:" y "px es una Concatenación (http://es.wikipedia.org/wiki/Concatenaci%C3%B3n).

Saludos
Título: Re: Por qué se le pone \
Publicado por: ccrunch en 12 Octubre 2013, 19:59 PM
Vale, ahora lo he pillado.

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