Ver Mensaje Individual
  #5 (permalink)  
Antiguo 07/12/2007, 07:10
Sanubrio
 
Fecha de Ingreso: septiembre-2007
Mensajes: 220
Antigüedad: 19 años, 1 mes
Puntos: 1
Re: Mostrar solo el principio de un párrafo

Código PHP:
function cortarTexto($texto, $longitud, $parte = 1)
{
    if (
$parte < 1 || strpos($texto, ' ') === false)
    {
        
$parte = 1;
    }
    elseif (
$parte > (strlen(substr($texto, 0, strrpos($texto, ' '))) / $longitud))
    {
        
$parte = strlen(substr($texto, 0, strrpos($texto, ' '))) / $longitud;
    }
    
    
$desplazamiento = ($parte - 1) * $longitud;
    
    if (!
$desplazamiento || substr($texto, $desplazamiento - 1, 1) == ' ')
    {
        
$pos1 = $desplazamiento;
    }
    else
    {
        
$pos1 = strpos($texto, ' ', $desplazamiento) + 1;
    }
    
    if (
$longitud <= ($pos1 - $desplazamiento))
    {
        
$desplazamiento = $pos1;
    }
    
    if (
substr($texto, $desplazamiento + $longitud - 1, 1) == ' ')
    {
      
$pos2 = $desplazamiento + $longitud;
    }
    elseif(
strpos($texto, ' ', $desplazamiento + $longitud) !== false)
    {
        
$pos2 = strpos($texto, ' ', $desplazamiento + $longitud);
    }
    else
    {
        
$pos2 = strlen($texto);
    }
    
    return 
substr($texto, $pos1, $pos2 - $pos1);
}

$texto = 'El coche rápido El coche rápido El coche rápido El coche rápido';

echo 
cortarTexto($texto, 1, 66);