スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

はてなブックマークに追加 はてなブックマーク - スポンサーサイト

PHP正規表現のe修飾子

Ver.1.52のカレンダーのGoogle地図、Google経路検索連携で、preg_replace正規表現のe修飾子というのを使っています。(正規表現はCSS以上に苦手なので、これが最善かどうかわかりません。)

preg_replaceの部分のみ、下に抜き出しておきます。(改行を入れています)
本文の<m></m>タグで囲んだ地名をのGoogle地図とGoogle経路検索連携の<a></a>タグに置き換えています。

e修飾子は、正規表現の置換とPHPとしての文字列置換を合わせて行えるというもののようです。パターンマッチしたものに、urlencodeをかけたり、PHP変数を入れて文字連結できます。e修飾子が無ければ、これの実現は難しかったと思います。

$str = preg_replace('/<m>(.*?)<\/m>/e',
"'$1'
. ' <a href=\"http://maps.google.co.jp/maps?spn=0.008102,0.011354&hl=ja&q='
. urlencode('$1')
. '\" \" target=\"_blank\" class=\"map_href\">→地図</a> <a href=\"http://maps.google.co.jp/maps?ie=UTF8&f=d&ttype=dep&dirflg=r&saddr='
. '$saddr'
. '&daddr='
. urlencode('$1')
. '\"\" target=\"_blank\" class=\"route_href\">→経路</a> '",
$str);
スポンサーサイト

はてなブックマークに追加 はてなブックマーク - PHP正規表現のe修飾子

theme : PHP
genre : コンピュータ

comment

Secret

プロフィール

ok.2nd

Author:ok.2nd
HomePage:
http://ok2nd.web.fc2.com/
Email: m.ok.2nd@gmail.com

最新記事
最新コメント
最新トラックバック
月別アーカイブ
FC2ブログランキング

FC2Blog Ranking

検索フォーム
カテゴリ
リンク
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
ユーザータグ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。