Enlaces
Esta en:

documentos
Arriba
Bind-9
Bind-8
Ad+bind
Dhcp
Kdephp
Shell
Trucos
Php
Documentos
Cuestiones php
Fedora
Legal
W2000 xp
COMOS
Errores dns

Re: [PHP-ES] Secuencias de Escape con ECHO

Write haof XML files: Nando.dfp <nando.dfp_at_gmail.com>
Fecha: Thu, 09 Aug 2007 17:12:47 +0200

Gracias,

Acabo de leer el mensaje de Fernando Ortiz con tu misma indicación.

Saludos.

Nando.dfp

Gerardo Benitez wrote:
> nando, es problema es que vos lo estas viendo con un browser, el browser te
> interpreta html.
>
> los saltos de lineas los va a interpretar por ejemplo si el string lo
> guardas en un archivo.
>
> para hacer que se vea el salto de linea en el browser tenes que hacer
>
> <?php
> echo "this is a <br> simple string";
>
> echo "You can also have embedded newlines in
> strings this way as it is
> okay to do";
>
> echo "This will not expand: <br> a newline";
>
> echo "This will not expand: <br> a newline";
>
> ?>
>
>
> On 8/9/07, nando.dfp_at_gmail. com <nando.dfp_at_gmail.com> wrote:
>> Antonio y Gerardo:
>>
>> Muchas Gracias por la respuesta.
>>
>> La verdad es que había probado ya con comillas dobles y simples, pero
>> con el mismo resultado. Estaba estancado con el tema y llevaba muchas
>> horas con el ordenador cuando puse el mensaje en els news de php.
>>
>> He repetido el código con dobles comillas y añadiendo \n\r y\r\n:
>>
>> <?php
>> echo "this is a \n simple string";
>>
>> echo "You can also have embedded newlines in
>> strings this way as it is
>> okay to do";
>>
>> echo "This will not expand: \n\r a newline";
>>
>> echo "This will not expand: \r\n a newline";
>>
>> ?>
>>
>> Pero el resultado es el mismo: (tanto con Firefox como IExplorer):
>>
>> this is a simple stringYou can also have embedded newlines in strings
>> this way as it is okay to doThis will not expand: a newlineThis will not
>> expand: a newline
>>
>> Para escribir el código utilizo el prg Crimson Editor, ya que como se
>> indica en el manual y foros es mejor no utilizar Notepad ya que deja
>> escritos códigos que pueden causar problemas.
>> También he probado a escribir con Notepad pero el resultado es el mismo.
>>
>> ¿Es posible que algún setting de PHP pueda afectar, aunque están por
>> defecto según los instala el WAMP?
>>
>> Muchas Gracias.
>>
>> Nando.dfp
>>
>>
>>
>> Antonio Galicia wrote:
>>> On 8/8/07, Nando.dfp <nando.dfp_at_gmail.com> wrote:
>>>
>>>
>>>> Según he leído en los manuales al intercalar en una sentencia echo la
>>>> secuencia \n o \r añadiría una línea nueva o un retorno de línea,
>> ¿correcto?
>>> Casí. Ambos casos son en efecto "secuencias de escape" lo que
>>> significa que representa gráficamente algo que debe ser interpretado
>>> como "otra cosa". En el caso de \n es la indicación de "nueva línea"
>>> en tanto que \r es el "regreso de carro". Esto tiene especial sentido
>>> si lo ves desde el punto de vista de una impresora de matriz de
>>> puntos. Un \n hará que el rodillo se mueva verticalmente una línea en
>>> tanto que el \r causará que la cabeza regrese a la posición "cero".
>>> ¿Se entiende? Bueno, en los buenos viejos tiempos del *nix donde cada
>>> byte que se movía por una red leeeeeenta representaba un gran costo
>>> así que en los archivos el pasar de un reglón a otro se representaba
>>> por un solo byte: un \r = CR = CHR(10) = x0A y era responsabilidad del
>>> dispositivo (o driver) agregar el \n = LF = CHR(13) = x0D para
>>> completar el cambio de línea. En los tiempos del DOS se instituyó el
>>> uso del doble byte para el cambio de línea y evitarle el trabajo a los
>>> dispositivos.
>>>
>>> ¿Y a cuento de qué todo esto? A que si trabajas en windows el ECHO
>>> envia dos caracteres para cambio de línea en tanto que en *nix sólo
>>> enviará uno. Espero haberte confundido más. ;^)
>>>
>>> Ahora pasemos a tu código:
>>>
>>>
>>>> echo 'This will not expand: \n a newline';
>>>> echo 'This will not expand: \r a newline';
>>>>
>>> Para que el motor de PHP (y casí todo lenguaje que se precie de
>>> serlo) interprete la secuencias de escape requiere que estén
>>> encerradas en comillas dobles. El tener comillas simples signidica
>>> *toma literalmente lo que está dentro*. Esto mismo se aplica a las
>>> variables, si están entre comillas dobles se "interpretan" (interpolan
>>> que le dicen).
>>>
>>>
>>>> Me aparece todo en una misma línea, así:
>>>>
>>>> "this is a simple stringYou can also have embedded newlines in strings
>>>> this way as it is okay to doThis will not expand: \n a newlineThis will
>>>> not expand: \r a newline"
>>>>
>>> Ahora revisa el código fuente de la página que estas viendo. Recuerda
>>> que el cliente web interpreta lo que recibe. Por cierto, observa el \n
>>> y que pasaría si en el fuente cambias de sencillas a dobles.
>>>
>>>
>>
>
>

-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
Nearby jue ago 09 2007 - 18:23:06 CEST

Este archivo fue generado por hypermail 2.2.0 : mié nov 07 2007 - 20:55:37 CET


Página Principal
Google

Web
dns.bdat.net

Visita nuestro proveedor:
www.bdat.net

Publicidad:

Impresenteibols:Humor Jazz, música en vivo