Foros del Web » Programando para Internet » PHP »

Cortar texto en cadena

Estas en el tema de Cortar texto en cadena en el foro de PHP en Foros del Web. Hola, en mi web tengo un sistema de noticias que muestra un pequeño resumen de la noticia, el problema es que los tags HTML, ejemplo: ...
  #1 (permalink)  
Antiguo 12/09/2008, 10:35
Avatar de PDD_20  
Fecha de Ingreso: diciembre-2007
Ubicación: España
Mensajes: 413
Antigüedad: 16 años, 3 meses
Puntos: 1
Cortar texto en cadena

Hola, en mi web tengo un sistema de noticias que muestra un pequeño resumen de la noticia, el problema es que los tags HTML, ejemplo: <br />, no los cierra a veces ya que se corta antes de que termine.

Ademas si podeis, ayudarme a conseguir que tampoco corte las palabras.

Os dejo el codigo y a ver si podeis ayudarme:

Código PHP:
// Parse the message and subject
            
$message censor_text($row['post_text']);
            
$message str_replace("\n"'<br />'$message);
            
            
// Second parse bbcode here
            
if ($row['bbcode_bitfield'])
            {
                
$bbcode->bbcode_second_pass($message$row['bbcode_uid'], $row['bbcode_bitfield']);
            }
            
$posts[$i]['post_text']= $message;    

            
$len_check $posts[$i]['post_text'];

            if ((
$text_length != 0) && (strlen($len_check) > $text_length))
            {
                
$posts[$i]['post_text'] = substr($len_check0$text_length);
                
$posts[$i]['post_text'] .= '...';
                
$posts[$i]['striped'] = true;
            }

            
$bbcode->bbcode_second_pass($posts[$i]['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield']);
            
$posts[$i]['post_text'] = smiley_text($posts[$i]['post_text']);
            
$i++; 
Saludos y muchas gracias.

PD: He buscado en Google y he encontrado soluciones pero no entiendo como incoporarlo a mi codigo, no entiendo de PHP.
__________________
El Grupo Informático :: Noticias y foros de Informática
¡Ahora por participar se regalan cheques para Amazon!
  #2 (permalink)  
Antiguo 12/09/2008, 10:37
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Cortar texto en cadena

investiga sobre wordwrap.

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #3 (permalink)  
Antiguo 12/09/2008, 10:45
Avatar de .php  
Fecha de Ingreso: julio-2006
Mensajes: 481
Antigüedad: 17 años, 8 meses
Puntos: 5
Respuesta: Cortar texto en cadena

wordwrap
Código PHP:
$nuevo_texto wordwrap($texto100"<br>");
echo 
$nuevo_texto
en tu caso
Código PHP:
  $message censor_text($row['post_text']);
  
$message wordwrap($message $largo"<br>"); 
__________________
~~[FiDeLio]~~
  #4 (permalink)  
Antiguo 12/09/2008, 10:55
Avatar de PDD_20  
Fecha de Ingreso: diciembre-2007
Ubicación: España
Mensajes: 413
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Cortar texto en cadena

Cita:
Iniciado por .php Ver Mensaje
wordwrap
Código PHP:
$nuevo_texto wordwrap($texto100"<br>");
echo 
$nuevo_texto
en tu caso
Código PHP:
  $message censor_text($row['post_text']);
  
$message wordwrap($message $largo"<br>"); 
Lo he probado y no va bien, eso lo que hace es añadir un br al final y no solucion que a veces se queda el <br /> de esta forma: <br y no aparece el resto porque ha sido cortado. Ese es el problema :S

Salu2 y gracias de todas formas.
__________________
El Grupo Informático :: Noticias y foros de Informática
¡Ahora por participar se regalan cheques para Amazon!
  #5 (permalink)  
Antiguo 12/09/2008, 11:05
Avatar de .php  
Fecha de Ingreso: julio-2006
Mensajes: 481
Antigüedad: 17 años, 8 meses
Puntos: 5
Respuesta: Cortar texto en cadena

yo pienso que debes cortarlo en un arreglo y después imprimirlo en un for

Código PHP:
  $message censor_text($row['post_text']); 
  
$message wordwrap($message $largo"::_::");
  
$aTmp    =    explode("::_::"$message );

  for(
$p=0;$p<count($aTmp);$p++)
  {
    
$posts[$i]['post_text']  .=      $aTmp[$p];
  } 
__________________
~~[FiDeLio]~~
  #6 (permalink)  
Antiguo 13/09/2008, 04:24
Avatar de PDD_20  
Fecha de Ingreso: diciembre-2007
Ubicación: España
Mensajes: 413
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Cortar texto en cadena

He hecho eso y salido algo muy raro, se mezclaban las noticias y salian muy largas :S

Salu2
__________________
El Grupo Informático :: Noticias y foros de Informática
¡Ahora por participar se regalan cheques para Amazon!
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 01:52.