【PHP】文字コード変換
chr関数の使い方(ASCIIコードを文字に変換する)
php3~で使用できます。
chr関数 : 書式
chr(ASCIIコード)
戻り値:ASCIIコードに対応する文字
chr関数はASCIIコードを文字に変換します。選択リストに表示される「A」から「Z」をまとめて取得する時などで活用できます。
chr関数 : 使用例
- ASCIIコードを文字に変換するecho chr(70); →「F」を出力
echo chr(34); →「*」を出力
echo chr(39); →「'」を出力
echo chr(92); →「\」を出力 - アルファベットを連続で取得するfor ($i=65; $i<70; $i++) {
echo chr($i);
}
出力結果 ABCDE
ord関数の使い方(文字からASCIIコードに変換する)
php3~ で使用できます。
ord関数 : 書式
ord(文字)
戻り値:文字から変換されたASCIIコード
chr関数の逆の動作、文字からASCIIコードに変換するには ord関数を使います。
ord関数 : 使用例
- 文字をASCIIコードに変換するecho ord("a"); →「97」を出力
mb_convert_encoding関数の使い方(文字コードを変換する)
php4.0.6~ で使用できます。
mb_convert_encoding関数 : 書式
mb_convert_encoding(文字列, 変換後の文字コード[, 変換前の文字コード])
戻り値:指定された文字コードに変換された文字列
mb_convert_encoding関数は、文字コードを変換します。データベースの文字コードが「EUC-JP」でブラウザへの出力が「SJIS」のように文字コードが異なる場合などに使います。変換前の文字コードを省略した場合は、設定されている内部文字コード(例:EUC-JP)の文字列として処理されます。この値とことなる場合は、3番目のパラメータに変換前の文字コードを指定したほうが良いでしょう。指定する際は、いくつかの文字コードを、検出する優先順位にカンマで区切って指定(例:SJIS、EUC-JP)できます。「auto」を指定した場合は「ASCII、JIS、UTF-8、EUC-JP、SJIS」と同じ意味です。
mb_convert_encoding関数 : 使用例
- 文字コードを変換する$str = mb_convert_encoding($str, "UTF-8"); →文字コードをUTF-8に変換
- 文字コードの検出順を指定して文字コードを変換する$str = mb_convert_encoding($str, "UTF-8", "SJIS, EUC-JP");
上記2つの使用例は、共に変数$strの文字コードを「UTF-8」に変換します。最初の例のように変換前の文字コードを指定しない場合は、内部文字コードの文字列として処理されます。
mb_convert_variables関数の使い方(配列の文字コードを変換する)
- 配列の文字コードを変換する$array = array("東京", "愛知", "大阪");
mb_convert_variables("EUC-JP", "SJIS", $array); →「EUC-JP」に変換mb_convert_variables関数を使うと配列やオブジェクトにあるデータの文字コードをまとめて変換することができます。
関連リンク
PHPトップページ
PHP入門 & 関数リファレンス
PHPの初心者からベテランまで活用できるページです。初めての方はもちろん、もう一度基礎から学びなおしたい方は、基礎知識のページを順に読んで理解しましょう。ベテランの方向けには、関数の書式・パラメーターを調べられる構成になっています。PHPプログラム作成時にご活用下さい。