Foros del Web » Programando para Internet » PHP »

Cortar una PALABRA

Estas en el tema de Cortar una PALABRA en el foro de PHP en Foros del Web. Hola, tengo un foro y hay veces en que la gente pone cosas del tipo: "me duermooooooooooooooooooooooooooooooooooooooooooooo oooooooooooooooooooooooooooooooooooooooooooooooooo oooooooooooooooooooooooooooooooooooooooooooooooooo o mogollón" lo que pasa, como ...
  #1 (permalink)  
Antiguo 27/08/2014, 14:32
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
Cortar una PALABRA

Hola,

tengo un foro y hay veces en que la gente pone cosas del tipo:

"me duermooooooooooooooooooooooooooooooooooooooooooooo oooooooooooooooooooooooooooooooooooooooooooooooooo oooooooooooooooooooooooooooooooooooooooooooooooooo o mogollón"

lo que pasa, como podéis imaginar, es que el ancho de la pantalla se me descuadra y la tabla que contiene el texto ocupa todo el ancho.

El caso es que digamos que no hay palabras de más de 30 caracteres, por lo que quiero cortar la palabra de tal forma que se me quede así:

"me duermoooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooo
ooooooo mogollón"

es decir que haga salto de línea.

Si uso wordwrap lo que me hace es cortar el texto entero pero yo quiero sólo las palabras de más de 25 caracteres.

¿cómo se haría?
  #2 (permalink)  
Antiguo 27/08/2014, 14:56
Avatar de toledo_nocturno  
Fecha de Ingreso: agosto-2011
Ubicación: Under the northen star
Mensajes: 86
Antigüedad: 12 años, 8 meses
Puntos: 5
Respuesta: Cortar una PALABRA

Muy buenas,

así a bote pronto, lo que se me ocurre es:

Código PHP:
Ver original
  1. function acortar($cadena){
  2.     $palabra_larga = explode(' ', $cadena); //Sacamos cada palabra
  3.     $cadena_saliente = '';//Declaramos, aunque sea vacía.
  4.     foreach($palabra_larga as $palabra_corta){ //Pasamos cada palabra a del array a un string
  5.         $palabra_corta = substr($palabra_corta, 0, 30); //A cada vuelta, la acortamos a 30 o dejamos como esté
  6.         $cadena_saliente = $cadena_saliente.' '.$palabra_corta; //Vamos montando el mensaje
  7.     }
  8.     return $cadena_saliente;//Devolvemos la cadena entera
  9. }

Se podría hacer mejor, pero bueno...

Espero te sea de ayuda!

Un saludo
__________________
diseño web | Clan Rol
  #3 (permalink)  
Antiguo 27/08/2014, 15:06
 
Fecha de Ingreso: octubre-2012
Mensajes: 74
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Cortar una PALABRA

Yo lo hago de esta forma

<?php
$palabra = $variable;
$tamaño = strlen($palabra);
if($tamaño > 70) {
echo substr($palabra,0,70); echo '...';
}else{
echo $palabra;
}

?>

Etiquetas: cortar, palabra, tabla
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 13:31.