Extraido de google..
Código PHP:
<?
// Inicializamos las variables
$tamano = 50; // tamaño máximo
$contador = 0;
$texto = 'Este es el texto que se cortará para que no ocupe más de 50 carácteres';
// Cortamos la cadena por los espacios
$arrayTexto = split(' ',$texto);
$texto = '';
// Reconstruimos la cadena
while($tamano >= strlen($texto) + strlen($arrayTexto[$contador])){
$texto .= ' '.$arrayTexto[$contador];
$contador++;
}
echo $texto;
?>