0
4

2 に答える 2

2

you can use something like this:

function makeLink($text){
    $reg_exUrl = "/(http|https|ftp|ftps)\://[a-zA-Z0-9-.]+.[a-zA-Z]{2,3}(/\S*)?/";
    if(preg_match($reg_exUrl, $text, $url)) $text = preg_replace($reg_exUrl, '<a href="'.$url[0].'" target="_blank">'.$url[0].'</a>', $text);
    return $text;
}

于 2012-09-09T12:58:37.143 に答える
0

厳密なテストを行っておらず、URL 構造についてあまり「うるさい」わけではありませんが、それでも機能するはずです (多数の URL で、http(s) で始まる場合のみ)。

$urlRegex = '((https?://))([a-z0-9\.\-]{1,63})\.(([a-z]{2,3})\.?)+/?([^ ]+)';
$parsed = preg_replace('#'.$urlRegex.'#','<a href="$0">$0</a>',$text);
于 2012-09-09T14:06:11.093 に答える