Buona sera, ho questa funzione

Codice PHP:
function addurl($testo)
{
   
// trasforma gli url senza link in link
   
$txt ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","[url="\\0"]\\0[/url]"$testo);
   
// trasforma le email in link
   
$testo ereg_replace ('[_a-zA-z0-9\-]+(\.[_a-zA-z0-9\-]+)*\@' '[_a-zA-z0-9\-]+(\.[a-zA-z]{1,3})+''<a href=mailto:\\0>\\0</a>'$txt);
   return 
$testo;

Quello che dovrei fare ma non sono riuscito č fare in modo di ridurre a tot caratteri il link che si vede mantenendo come link l'indirizzo completo.

Come devo fare?