続・mailto記法
id:cubicdaiya:20060801の続き。
mailto記法だが, 勉強が一通り終わった後にPHPポケットリファレンスを見ていて
実はちょ〜簡単にできることに気が付いた。
private function createMailTo(){ $reg = '/^([a-z0-9_]|\-|\.|\+)+@(([a-z0-9_]|\-)+\.)+[a-z]{2,6}$/i'; $this->text = preg_replace($reg, "<a href=\"mailto:\\1\">\\1</a>", $this->text); }
preg_replaceで指定した正規表現($reg)の()で囲まれた部分を置換文字列の方(\\1の部分)に
持ってこれるとは知らなかったので今までは大半の記法の関数でテキストをexplodeで行毎に
配列に詰め込んでループを回してpreg_match→preg_replaceって感じでやってたのだが,
ほかの記法もこれでもっと簡単にできそう。
[改訂版] PHP ポケットリファレンス (Pocket reference)
- 作者: 大垣靖男
- 出版社/メーカー: 技術評論社
- 発売日: 2005/09/17
- メディア: 単行本
- 購入: 3人 クリック: 25回
- この商品を含むブログ (32件) を見る