PHP研究

11. オートリンク機能

掲示板で欠かせない機能として、
オートリンクがあげられる。

$str = ereg_replace("(http://[^\x8E\xA1-\xFE\n ]+)", "<a href=\"\\1\" target=\"_blank\">\\1</a>", $str);

完全ではないけれど、一般的に使われているレベルなので、問題はないと思われる。

もちろんEUCで使用のこと。
SJISではもっと精度が落ちる。

試しに、
$str = "今夜にゃ庭なの年。abc http://cgi.linkclub.or.jp/~kimkim/index2.shtml";
$str2 = "http://cgi.linkclub.or.jp/~kimkim/index2.shtml abc";
$str3 = "へ?http://cgi.linkclub.or.jp/~kimkim/index2.shtmlこそどろ";
$str4 = "avchttp://cgi.linkclub.or.jp/~kimkim/index2.shtmlhaba";
という4つの文字列でやってみる。

EUC保存したスクリプトから出力の例
SJIS保存したスクリプトから出力の例