2010年5月14日金曜日

URLの正規表現による自動リンク処理

正規表現で、URLを探し、自動的にリンクさせる関数のメモ。
簡易的ですが。。

長すぎるURLは60字でトリムして表示。

function url($text){
 $regex="s?https?:\/\/[a-zA-Z0-9;\/?:@&=\+$,\-_\.!~*'\(\)%#]+";
 if(strlen($text)>60){
  $text2=mb_substr($text,0,60);
  $text2=sprintf("%s...",$text2);
 }else{
 $text2=$text;
 }
 echo preg_replace("/$regex/","<a href=\"\\0\"
      target=\"_blank\">$text2</a>",$text);
}

0 件のコメント:

コメントを投稿