Recorta las palabras de una cadela de texto poniendo «…» al final en php

//recorta las palabras de una cadela de texto y elimina los posibles tags html
//devuelve las primeras $lng palabras de $txt, concatenando ‘…’ al final si las palabras de $txt son superiores a $lng
function longitud_por_palabras($txt,$lng){

$txt=strip_tags($txt);

$palabras=split(» «,$txt);

$txt=»»;
$i=0;

while ($palabras[$i]!=»» && $i<$lng){

$txt=$txt.$palabras[$i].» «;
$i++;

}

if ($i==$lng)
$txt=$txt.»…»;

return($txt);
}