PHPで外部APIをアクセスし、レスポンスの文字コードがアクセス元環境と違う場合、文字化けとなるため、
文字コード変換が必要となります。
mb_convert_encoding関数
mb_convert_encoding関数で指定した文字コードへ変換できます。
使用方法:
string mb_convert_encoding ( string $str, // 変換する文字列 string $to_encoding // 変換後の文字エンコーディング [, mixed $from_encoding ] // 変換前の文字エンコーディング )
変換前の文字エンコーディング、from_encodingを指定しなかった場合には内部文字エンコーディングがそれとみなされるため、これは省略すべきではありません。また’auto’と指定した場合には、日本語環境では’ASCII,JIS,UTF-8,EUC-JP,SJIS’と指定したものとみなされます。
$to_encodingと$from_encodingには、以下のようなエンコーディングを指定できます。
iconv関数
iconv関数で指定した文字コードへ変換できます。
使用方法:
string iconv ( string $in_charset , // 入力文字セット (エンコーディング) string $out_charset , // 出力文字セット (エンコーディング) string $str // 変換する文字列 )
※$out_charsetにキーワードを追加することで、指定の文字セットで変換できない場合の挙動を制御できます。