2010年7月19日月曜日

[PHP]: mb_convert_kana()がうまく動かないとき

PHPにはmb_convert_kana()という英数時,スペースの半角文字と全角文字を変換する関数がある.
この関数は日本語を処理するときに非常に便利な関数なのだが,どうもうまく動かない時があるようだ.

そんな時は
mb_convert_kana($str, 'as');
としていたのを
mb_convert_kana($str, 'as', 'utf-8');
としてやると上手くいくことがある.もちろん第三引数の文字コードは環境に応じて変える必要がある.

恐らく,PHPの文字コードauto_detectが上手く動いていないのだと思うが,自分が開発している中では結構この不具合の発生率は高い気がする.

mb_convert_kana()周りで不具合があったときは確認してみるといいと思う.

0 件のコメント:

コメントを投稿