Foros del Web » Programando para Internet » PHP »

Cómo reemplazar \n (salto de línea) con str_replace

Estas en el tema de Cómo reemplazar \n (salto de línea) con str_replace en el foro de PHP en Foros del Web. Slds, estoy haciendo un listado rotativo con anuncios que salen de la base de datos, para escribir el javascript hago un echo de la siguiente ...
  #1 (permalink)  
Antiguo 01/03/2007, 09:25
 
Fecha de Ingreso: julio-2003
Mensajes: 100
Antigüedad: 21 años, 4 meses
Puntos: 0
Cómo reemplazar \n (salto de línea) con str_replace

Slds, estoy haciendo un listado rotativo con anuncios que salen de la base de datos, para escribir el javascript hago un echo de la siguiente manera:

//Defino una variable elMensaje en la que voy armando el javascript

$elMensaje= "<SCRIPT language=JavaScript> var mymessage=''; mymessage = '";

//Ahora hago la consulta a la base
$sql_a = "SELECT * FROM contrapunto_contenidos WHERE tipo='DPA'";
$result_a = mysql_query($sql_a);
while ($myrow_a = mysql_fetch_array($result_a)) {
$TITULO = $myrow_a["titulo"];
$CONTENIDO = $myrow_a["contenido"];

//escribe los resultados de la consulta

$elMensaje.= 'el titulo: '.$TITULO.'<br>';

// saca un extracto de el campo contenido con la función "haceResumen"

$elMensaje.= haceResumen($CONTENIDO, 300);
}
$elMensaje.= "<br><br>';var swidth=600;var sheight=70;var sspeed=2;</SCRIPT>";

/* aqui la variable $elMensaje está completa y el resultado es:

<SCRIPT language=JavaScript> var mymessage=''; mymessage = 'el título: El título 1<br> aqui el contenido de
el primer título <br><br>el título: El título 2<br> aqui el contenido de
el segundo título <br><br>';var swidth=600;var sheight=70;var sspeed=2;</SCRIPT>

Si ustedes notan hay saltos de linea que se encuentran en la base cuando se llenaron los campos*/

//trato de reemplazarlos con:

$elMensaje = str_replace("\n","",$elMensaje);
echo $elMensaje;


Traté de eliminar esos saltos para que la variable en javascript se encuentre en una sola línea y la pueda leer correctamente pero no puedo, agradezco mucho cualquier sugerencia.

Slds
  #2 (permalink)  
Antiguo 01/03/2007, 10:08
Avatar de xyyy7  
Fecha de Ingreso: enero-2004
Ubicación: Maracay.-
Mensajes: 637
Antigüedad: 20 años, 9 meses
Puntos: 5
Re: Cómo reemplazar \n (salto de línea) con str_replace

Hola, Podrias intentarlo asi.-

Código PHP:
//Defino una variable elMensaje en la que voy armando el javascript
$elMensaje"<SCRIPT language=JavaScript> var mymessage=''; mymessage = '";
//Ahora hago la consulta a la base
$sql_a "SELECT * FROM contrapunto_contenidos WHERE tipo='DPA'";
$result_a mysql_query($sql_a);
while (
$myrow_a mysql_fetch_array($result_a)) {
$TITULO $myrow_a["titulo"];
$CONTENIDO $myrow_a["contenido"];

//escribe los resultados de la consulta

$elMensaje.= 'el titulo: '.$TITULO.'<br>';

// saca un extracto de el campo contenido con la función "haceResumen"

$elMensaje.= haceResumen($CONTENIDO300); 
}
$elMensaje.= "<br><br>';var swidth=600;var sheight=70;var sspeed=2;</SCRIPT>";
$elMensaje=preg_replace("/\s+/"," ",$elMensaje); // http://www.php.net/preg_replace
$elMensaje trim($elMensaje); // http://www.php.net/trim 
Saludos.-
__________________
Maracay Edo Aragua - Venezuela :
Mi Favorita :
http://www.MySQL.Com
  #3 (permalink)  
Antiguo 01/03/2007, 10:19
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
Re: Cómo reemplazar \n (salto de línea) con str_replace

Otra manera:
Código PHP:
$cadena_sin_saltos=ereg_replace('[[:space:]]+',' ',$cadena_con_saltos); 
  #4 (permalink)  
Antiguo 01/03/2007, 10:24
.:Chimera:.
Invitado
 
Mensajes: n/a
Puntos:
Re: Cómo reemplazar \n (salto de línea) con str_replace

Yo encuentro mucho mas facil usar la funcion nl2br()
Simplemente así:

Código PHP:
$cadena="\nEsto es una linea\nOtra linea mas\nOtra linea mas";
$nueva_cadena=nl2br($cadena);
echo
"$nueva_cadena";
//nueva_cadena es: <br />Esto es una linea<br />Otra linea mas<br />Otra linea mas 
Si lo que querías erra eliminar sin más los saltos, usa la funcion que te dan arriba...


Salu2
  #5 (permalink)  
Antiguo 01/03/2007, 11:01
 
Fecha de Ingreso: julio-2003
Mensajes: 100
Antigüedad: 21 años, 4 meses
Puntos: 0
Re: Cómo reemplazar \n (salto de línea) con str_replace

Muchas gracias por su ayuda, funciona muy bien....

Leí nuevamente las referencias de las funciones en el php.net y aprendí la diferencia entre str_replace() y preg_replace, y es que este último busca y reemplaza "expresiones regulares", y como no sabía que era eso encontré la respuesta en w w w.ignside.net/man/php/regex.php para los que lleguen a este post.

Gracias por su ayuda nuevamente
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:06.