Foros del Web » Programando para Internet » PHP »

recortar texto

Estas en el tema de recortar texto en el foro de PHP en Foros del Web. Holas, Tengo un problemilla que no se si solucionarlo con PHP o con Javascript, asi que envio esta pregunta por ambos lados. Tengo una tabla ...
  #1 (permalink)  
Antiguo 02/07/2007, 12:28
Avatar de chiquirf  
Fecha de Ingreso: noviembre-2005
Ubicación: Madrid
Mensajes: 215
Antigüedad: 14 años, 3 meses
Puntos: 3
recortar texto

Holas,

Tengo un problemilla que no se si solucionarlo con PHP o con Javascript, asi que envio esta pregunta por ambos lados.

Tengo una tabla que se genera con datos de una BD con PHP, uno de los campos es el nombre de la empresa, el problema es que algunos nombres son muy largos, y lo que quiero hacr es recortarlo a X caracteres para que no me deforme la tabla.

¿Hay alguna funcion en Javascript o PHP que pueda usar para esto?

Graicas por sus respuestas...

Saludos

Carlos
  #2 (permalink)  
Antiguo 02/07/2007, 12:29
Avatar de chiquirf  
Fecha de Ingreso: noviembre-2005
Ubicación: Madrid
Mensajes: 215
Antigüedad: 14 años, 3 meses
Puntos: 3
Recortar texto

Holas,

Tengo un problemilla que no se si solucionarlo con PHP o con Javascript, asi que envio esta pregunta por ambos lados.

Tengo una tabla que se genera con datos de una BD con PHP, uno de los campos es el nombre de la empresa, el problema es que algunos nombres son muy largos, y lo que quiero hacr es recortarlo a X caracteres para que no me deforme la tabla.

¿Hay alguna funcion en Javascript o PHP que pueda usar para esto?

Graicas por sus respuestas...

Saludos

Carlos
  #3 (permalink)  
Antiguo 02/07/2007, 12:31
Avatar de Panino5001
Moderatroll
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.103
Antigüedad: 15 años, 8 meses
Puntos: 791
Re: recortar texto

Mejor desde php: wordwrap
  #4 (permalink)  
Antiguo 02/07/2007, 12:43
Avatar de chiquirf  
Fecha de Ingreso: noviembre-2005
Ubicación: Madrid
Mensajes: 215
Antigüedad: 14 años, 3 meses
Puntos: 3
Re: recortar texto

Gracias panino por el dato, pero lo que nececito es algo que haga lo siguiente:

Texto: El veloz murcielago hindo comia feliz cardillo y kiwi.

Con WORDWRAP hace:

El veloz murcielago<br />
hindo comia feliz<br />
cardillo y kiwi.

Lo que necesito es (porejemplo que corte a los 15 caracteres):

El veloz murcie...

graicas por el dato igual, también tendré el wordwarp para cuando lo necesite.
  #5 (permalink)  
Antiguo 02/07/2007, 13:03
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 18 años
Puntos: 772
Re: recortar texto

En el foro de PHP podrán asesorarte mejor.

Movido desde JavaScript.

Saludos,
  #6 (permalink)  
Antiguo 02/07/2007, 13:08
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 15 años
Puntos: 20
Re: recortar texto

Puedes utilizar esta función:

Código PHP:
function cut_string($string$charlimit)
{
   if(
substr($string,$charlimit-1,1) != ' ')
   {
       
$string substr($string,'0',$charlimit);
       
$array explode(' ',$string);
       
array_pop($array);
       
$new_string implode(' ',$array);

       return 
$new_string;
   }
   else
   {  
       return 
substr($string,'0',$charlimit-1);
   }

Y si quieres recortar, pones el nombre de la variable y tras la coma la longitud máxima aceptada:

Código PHP:
echo cut_string($texto20); 
  #7 (permalink)  
Antiguo 02/07/2007, 13:22
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 18 años, 6 meses
Puntos: 9
Re: Recortar texto

Es mejor con esta función : http://www.php.net/manual/es/function.substr.php

Te doy un ejemplo
Código PHP:
<?
$texto_nuevo
=substr($texto030);
?>
Esto en caso de ser mayor a 30 carácteres tu título de la empresa...
  #8 (permalink)  
Antiguo 02/07/2007, 13:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: recortar texto

Temas combinados.

Saludos.
  #9 (permalink)  
Antiguo 02/07/2007, 14:30
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 15 años, 11 meses
Puntos: 4
Re: recortar texto

Y porque no usas substring ?
Código:
var linea=new String("Mi página es ideal);
var lista = linea.substring(3);
La variable lista contendrá "página es ideal".
var linea=new String("Mi página es ideal);
var lista = linea.substring(3, 9);

ahora la variable lista contendrá "página", al igual que en
var linea=new String("Mi página es ideal);
var lista = linea.substring(9, 3);
__________________
| Cabeza De Raton |
  #10 (permalink)  
Antiguo 02/07/2007, 14:44
Avatar de chiquirf  
Fecha de Ingreso: noviembre-2005
Ubicación: Madrid
Mensajes: 215
Antigüedad: 14 años, 3 meses
Puntos: 3
Re: recortar texto

Muchas gracias, funciona de PM...

Solo que le hice unos pequeños retoques para que aparezcan los "..." si es que se recorta el nombre.

Aquí les pongo el código por si a alguien le interesa:

Código PHP:
function cut_string($string$charlimit)
{
if(
strlen($string) > $charlimit)
{
       
$string substr($string,'0',$charlimit);
       
$array explode(' ',$string);
       
array_pop($array);
       
$new_string implode(' ',$array);

       return 
$new_string.'...';
}
else
{
return 
$string;
}

Gracias de nuevo.

Saludos

Carlos
  #11 (permalink)  
Antiguo 02/07/2007, 16:03
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 15 años
Puntos: 20
Re: recortar texto

Cita:
Iniciado por chiquirf Ver Mensaje
Muchas gracias, funciona de PM...

Solo que le hice unos pequeños retoques para que aparezcan los "..." si es que se recorta el nombre.

Aquí les pongo el código por si a alguien le interesa:

Código PHP:
function cut_string($string$charlimit)
{
if(
strlen($string) > $charlimit)
{
       
$string substr($string,'0',$charlimit);
       
$array explode(' ',$string);
       
array_pop($array);
       
$new_string implode(' ',$array);

       return 
$new_string.'...';
}
else
{
return 
$string;
}

Gracias de nuevo.

Saludos

Carlos

Sí, la verdad es que tuve que buscar esa función adicional para corregir los problemas que me daba substr()

En cuanto a los puntos, yo prefería ponerlo en el momento de usar la función

Código PHP:
echo cut_string($texto,20)."..."
Pero sobre gustos... Me alegro que te sirva
  #12 (permalink)  
Antiguo 03/07/2007, 01:40
Avatar de chiquirf  
Fecha de Ingreso: noviembre-2005
Ubicación: Madrid
Mensajes: 215
Antigüedad: 14 años, 3 meses
Puntos: 3
Re: recortar texto

Gracias a todos por la ayuda,

David, yo puse los puntos dentro de la funcion porque el corte lo estoy haciendo a los 30 caracteres, y no todos los nombres se pasan de esa cantidad, y la idea es (como indica el IF) que si no corta el nombre, que no ponga los puntos:

IF( nombre > limite)
{ corta y pone los "..."}
ELSE
{muestra el nombre completo}


Saludos a todos...

Carlos
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 10:47.