« 2009年10月 | トップページ

2009年11月

おひっこしします。

色々と使いづらかったので、レンタルサーバでWordPress使うことにしました。
てっく★ゆきろぐ Rev2

|

mb_eregの罠(なぜか一致しない)

先日の記事で、eregのひとはmb_eregに移行するといいよ、って記事を書きました。

ところがその後。
tweetAngelで、設定した文字列が一致しないということがありまして。
(実は、mb_eregを使用してます(参考))

気になって、こんなコードを書いてみました。

if ( mb_ereg( "メモ" , "メモ。あとで(以下略" ) === FALSE ) {
print "no match.\n" ;
} else {
print "match.\n" ;
}

そして実行したら・・・
no match.

(;;;・3・)あるぇぇぇぇ?
おかしいですね。どうみても一致するはずなのに、なぜか一致しません。
ちなみに、同じようにやってる「^予定」と「見てるぅ」と「^ToDo」はちゃんと動いてたので、なおさら頭を抱えてました。

もしかして・・・と思って、ちょっと調べたら・・・やっぱりありました!
mb_eregで日本語検索すると・・ : アシアルブログ
mb_ereg系関数を使う際の文字エンコーディング設定がちゃんとなってなかったようです。
どうやら同様の件は、結構はまるポイントのようです。

詳細は上記ブログにて解説がありますのでそちらに譲るといたしまして。
結論言うと、mb_ereg()系関数を使う場合、 mb_regex_encoding() で使用する文字エンコーディングをきちんと指定してあげる必要があります。

そんなわけであっさり解決。

| | コメント (0) | トラックバック (0)

« 2009年10月 | トップページ