Foro de elhacker.net

Programación => 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:

Código:
<?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
  1. <?php
  2. $x = 30;
  3. print "<p style=\"font-size: " . $x . "px\" >Texto grande</p>\n";
  4. ?>

'\'+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
  1. 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).