トップページ >  PHP >  文字列のエンコーディング
初版2008/10/23: 最終更新日2013/05/24
文字列のエンコーディング
目次
文字列のエンコーディング
サンプル
autoが効かない
文字列のエンコーディング
文字列をエンコーディングするには、mb_convert_encodingを使用します。
第一引数にエンコーディングしたい文字列を指定します。
第二引数に変換したい文字エンコーディング名を指定します。
第三引数に変換前の文字エンコーディング名を指定します。
第三引数を auto にすると、ASCII,JIS,Shift_JIS,EUC-JP,SJISの全てを指定したことになります。


サンプル
<html>
<body>
<?php
    $str = "あああ";
    $str = mb_convert_encoding($str,"Shift_JIS","auto");
    echo "<div>" . $str . "</div>";
?>
</body>
</html>

autoが効かない
mb_convert_encoding($str,"Shift_JIS","auto");というように記述すると、php.iniの設定によってautoが効きません。
このような場合、autoの変わりに、全てを指定します。以下、例です。

mb_convert_encoding($str,"Shift_JIS","ASCII,JIS,EUC-JP,SJIS");

または、php.iniの設定を以下のように変更する必要があります。

mbstring.detect_order = auto