Cara eu fiz um também mas eu só limito o tamanho na hora de exibir na pagina para isso eu criei a seguinte funcao.
function cutstr ($string, $len) {
$i = $len;
while ($i < strlen($string)) {
if ($string[$i] == " ") {
$string = substr($string, 0, $i)."[...]";
return $string;
}
$i++;
}
return $string;
}
e no pagina q vai mostrar eu coloco assim:
echo cutstr($string,"290");
Onde $string é a noticia e o 290 é o numero de caracteres que ele vai mostrar, quando chegar no 290 ele vai colocar [...] querendo dizer q tem mais texto, você pode mudar isso na funcao e colocar clique aqui para ler mais, sei la vai da sua imaginacao. Espero ter ajduado.