Yo te puedo explicar como he hecho lo del "Leer mas" en mi sistema de noticias, claro que seguro hay mejores formas:
1.-Cuento los carácteres de la noticia (antes de pasarlos a una funcion de BBcode o lo que sea) que sería algo asi:
Código PHP:
$cuentacar = substr($row[txt]);
2.-Teniendo en cuenta los carácteres que tenga la noticia hago una cosa u otra:
Código PHP:
//Si la noticia es mayor de mil caracteres
if{$cuentacar < 1000) {
//Muestro la noticia y pongo la opcion de leer mas
echo"Noticia:<br>".$row[txt]."<br>Puedes <a href=\"#\">leer más</a>";
//De lo contrario...
} else {
//"Corto" la noticia desde el caracter 0 hasta el 1000
$txt = substr($row[txt],0,1000)."...";
//Y la muestro
echo"Noticia:<br>".$txt."<br>Esa ha sido la noticia";
}
Como ves es un sistema algo rudimentario, pero funciona, te lo puedo asegurar ;)