PHP ile otomatik link fonksiyonu

Ağustos 2012 | Turan Karatuğ, Web Yazılım Uzmanı
Sayfa içerisindeki url leri tespit edip bunları linke çeviren bir fonksiyon.

function linkYap($text) {
$text = eregi_replace('(((f|ht){1}tp://)[[email protected]:%_\\+.~#?&//=]+)', '\\\\1', $text);
$text = eregi_replace('([[:space:]()[{}])(www.[[email protected]:%_\\+.~#?&//=]+)', '\\\\1\\\\2', $text);
$text = eregi_replace('([_\\.0-9a-z-][email protected]([0-9a-z][0-9a-z-]+\\.)+[a-z]{2,3})', '\\\\1', $text);
$regexp = "]*href=(\\"??)([^\\" >]*?)\\\\1[^>]*>(.*)<\\/a>";
if(preg_match_all("/$regexp/siU", $text, $matches)) {
# $matches[2] = array of link addresses
# $matches[3] = array of link text - including HTML code
foreach ($matches[3] as $key=>$val) {if ($val[50]) {\t$text = str_replace(">" . $val . "<", ">" .substr($val,0,50) . "...<", $text);}}
}
return $text;
}

Sayfada Kullanımı:

$text = "lorem ipsum dolor sit amet siteniz.com";
$text = linkYap($text);
echo "$text";