今日の人気記事

  1. 配列を文字列に変換する - implode()
  2. 定数の基本構文

文字列のエンコーディングを変換 - mb_convert_encoding()

当ページのリンクには広告が含まれています。

プログラミング言語PHPで、指定した文字列のエンコーディングを変換する関数 mb_convert_encoding()を紹介します。

mb_convert_encoding関数

string mb_convert_encoding ( string $str, string $to_encoding [, mixed $from_encoding ] )
指定した文字列のエンコーディングを変換します。
引数
$str
エンコーディングを変換する文字列を指定します。
$to_encoding
変換するエンコーディングを指定します。
$from_encoding
変換前の文字列のエンコーディングを指定します。
指定しない場合は内部エンコーディングが使われます。
"auto"を指定した場合、mb_detect_order関数で取得するエンコーディング順に
文字列に合うエンコーディングが選択されます。
返り値
エンコーディングを変換した文字列を返します。

サンプルコード

指定した文字列のエンコーディングを変換するサンプルコードです。

mb_convert_encoding( 文字列, 変換後のエンコーディング, 変換前のエンコーディング )
<?php
$string = "文字列を変換するってばよ";

/* 内部エンコーディング → SJISへ変換 */
echo mb_convert_encoding( $string, "SJIS" ) . "\n";

/* EUC-JP → UTF-8へ変換 */
echo mb_convert_encoding( $string, "UTF-8", "EUC-JP" ) . "\n";
?>

実行結果です。内部エンコーディングは「UTF-8」なので、当然文字化けします……。

??????????????????????????????????????
??絖?????紊????????c???違??

内部エンコーディングの異なるサーバーから受け取ったファイルやHTMLの解析などのときに利用すると便利です。

文字列 の人気記事

  1. 配列を文字列に変換する - implode()
  2. 文字列を大文字 / 小文字に変換 - strtoupper()、strtolower() - mb_strtoupper()、mb_strtolower()
  3. 指定した文字列の出現回数をカウント - substr_count()
  4. 文字列の長さを取得 - strlen()、mb_strlen()
  5. 文字列のエンコーディングを変換 - mb_convert_encoding()
  6. 区切り文字列を配列に変換 - explode()
  7. 指定した範囲の文字列を置換 - substr_replace関数
  8. PHP関数リファレンス

関連記事(一部広告含む)