オートリンクって分かりますか?

オートリンクって分かりますか?

掲示板などで、http://〜というURLを書いて投稿すると、
自動的に、<a href=〜>のタグが付いて、表示されることが
ありますね。その機能のことです。

つまり、紹介するのは、

http://www.url.com/ といったURLを、

<a href="http://www.url.com/">http://www.url.com/</a>

といった形に、PHPという命令で自動的に変換してみよう!!

といったものです。


ただ、普通のページでは、http://〜といったURLを表示させて、
それにそのままリンクを貼ることはあまりないですね。

そこで、メルマガをそのままエントリーにするか、あえて、URL表示の
ままということぐらいにしか使えないかもしれないですが、覚えておいて
損はないですね。

PHPという命令で加工するのは応用が利きますので使ってみてくださいね。

PHPコードはコチラ↓

<?php

function Http($mes){
return eregi_replace("(https?)(://[[:alnum:]\S\+\$\?\.%,!#~*/;:@&=_-]+)",
"<a href=\"\\1\\2\" target=\"_blank\">\\1\\2</a>",$mes);
}
?>

<?php

$str=<<< END_DOC
<$MTEntryMore$>
END_DOC;

$str= Http(htmlspecialchars($str,ENT_QUOTES));
echo $str;
?>

ここまで↑


コードが二つに分かれています。
上のHttpという関数で、パラメータの文字列($mes)に含まれるURLを、<a href>タグ付
に、置換するものです。
正規表現を用いて、URL表記の検索をしています。

下のコードは、<$MTENtryMore$>の変換です。
<$MTEntryMore$>は、エントリーの追記部分に置き換わるMTでのタグです。
このタグは、管理画面で入力されたとおりの文章に、置換されます。
追記部分が、複数行にわたっていれば、そのままの行数で出力されます。

そこで、「ヒアドキュメント」というものを利用します。
ヒアドキュメントというのは、複数行にわたる文字列を、一まとめに扱える仕組みです。
この仕組みで、エントリーを、そのままの形で、文字列に置き換えることが出来るんです。

$str=<<<END_DOC
<$MTEntryMore$>
END_DOC;

の部分に当たります。<<<END_DOCから、END_DOCまでの複数行を、一まとめとして
$strに入力していることになるのです。

END_DOCのところは、文字列は何でもかまいません。分かりやすい好きなキーワードで大丈夫です。

あとは、その文字列を、htmlspecialcharsという関数で、変換してから、URLの置換関数を呼び出すのです。

htmlspecialcharsは、特殊文字をHTMLエンティティに変換する関数で、例えば、「<」を「<」に変えます。

HTMLエンティティの変換は、タグをそのままの形で表示させるためのものです。タグが、タグとして動作して
しまわないようにするためのものです。


ぜひ、使ってみてくださいね。

<< 前のページ

次のページ >>

関連ページ

お気に入りに追加


ぜひお気に入りへの追加をお薦めします。 またはRSSでの購読をお薦めします。
はてなRSSに追加
livedoor Readerに追加
My Yahoo!に追加
Googleに追加
goo RSSリーダーに追加
Bloglinesに追加
Technoratiに追加
PAIPOREADERに追加
newsgatorに追加
feedpathに追加
Powered by SEO対策 RSSプラス

メルマガ購読

メルマガ購読はこちら
海外ネット情報満載!
海外のインターネットビジネスを解説。海外の最新ビジネスモデル、新製品情報、トレンド、SEO、ツールを紹介します
(マガジンID:0000190704)
メールアドレス:

Powered by

RSS リーダーで購読する RSSリーダーで購読する

Powered by Feedburner.jp

ピタットマッチで広告収入!
Infotopで情報商材を販売してみませんか?
SOHO・起業家を成功に導く電子書籍販売ツールを提供・・インフォカート
emzshop登録はこちら