Te mando un ejemplo básico que podras adaptar a lo que necesites...
Utilizamos la funcion explode de PHP para construir un array con todas las palabras del texto. La función explode lo que hace es partir la cadena $mi_texto cuando encuentra el caracter que le pasas como primer parametro.
$array_palabras= explode(" ", $mi_texto);
for($i=0; $i <=7; $i++) {
if ($i==7) {
print $array_palabras[$i] . "..."
} else {
print $array_palabras[$i] . " "
}
}
Un saludo