phpで文字コード変換

PHPで文字コードを変換するために、mb_stringを実装しました。

mb_stringを有効にする

php.iniで[mbstring]を

--------------------------------------
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = pass (SJIS では文字化けすることがある)
mbstring.encoding_translation = On (Off を On に. BBSなどで文字化けするようなら Offに)
mbstring.detect_order = auto
mbstring.substitute_character = none;
mbstring.func_overload = 0
--------------------------------------

さらに、dllの位置指定とコメントアウトも。
----------------------------------
extension_dir = C:\php\extensions\ (デフォルトの ./ をインストール先に合わせて変更)
extension=php_mbstring.dll
output_handler = mb_output_handler
----------------------------------

と変更。

phpで文字コード変換

$str = mb_convert_encoding($str, "EUC-JP", "auto");

これで$strをEUC-JPに変換できます。 autoに指定しておけば、変換元の文字コードは自動で判別してくれます。

$str = mb_convert_encoding($str, "EUC-JP", "UTF-8");

こうすれば、UTF-8からEUC-JPへの変換です。文字コードが分かっている場合は、こちらが確実でしょう。

参考サイト
AN HTTPDでPHPを動かす
PHP: mb_convert_encoding – Manual

カテゴリー: PHP   パーマリンク

phpで文字コード変換 への1件のコメント

  1. 匿名 より:

    PHPで簡易ブログを作ろう!のサイト
    シンプルですごく解りやすいです。

    DBなしでアーカイブを出力する方法、画像のアップロード、RSS、
    SNSとの連携などがあったらもっといいですね!(自分で作れって感じですが)

コメントをどうぞ

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>