Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/04/2006, 00:56
Computer XTress
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 4 meses
Puntos: 2
Manejo de strings...

Que tal...

¿Alguno sabe como hacen algunas aplicaciones como este mismo foro para formatear el texto ingresado en el <TEXTAREA> de nuevo mensaje y mostrarla luego dentro de un div (o lo que sea)?

El problema ya debe ser conocido: por ejemplo, si el usuario deja presionada la letra "a", se crea una linea larguisima y cuando la mostramos se expande el DIV (quedando horriblemente desagradable).

Sé que debo usar wordwrap recorriendo el string, pero aun asi no logro que se haga PERFECTAMENTE, a veces me quedan "\n" de más, o cosas por el estilo.

Estoy armando una función que en parte me esta dando mejores resultados, pero todavia no es 100% aplicable.

Por las dudas la dejo aca
Código PHP:
        $texto = <supongamos que qui hay un texto muy largo...>;
    
$nuevo_texto "";

    
$limit 90;
    
$counter 0;

    for (
$i 0$i <= strlen($texto); $i++) {
        
$counter++;
        if (
$counter == $limit && $texto[$i] != "\n") {

            
$nuevo_texto.= $texto[$i]."\n";
            
$flag 1;
            
$counter 0;

        } else if (
$counter $limit && $texto[$i] == "\n" && $flag == 1) {

            
$nuevo_texto.= " ";
            
$flag 0;

        } else if(
$counter $limit && $texto[$i] == "\n") {

            
$nuevo_texto.= $texto[$i];
            
$counter 0;

        } else {

            
$nuevo_texto.= $texto[$i];
        }
    } 
Esta funcion tiene un error:

A veces hay varios "\n" que son intencionales, por ejemplo cuando uno escribe:

"Lista de compras:
a- verduras
b- frutas"

La funcion, en algunos casos, las quita cuando deberia dejarlas.

Bueno.. no se estoy ya bastante perdido. CUALQUIER AYUDA QUE ME PUEDAN ENVIAR LES AGRADEZCO!!!!!!!!!!!!! :)