PHPの内部文字列エンコーディング変換関数mb_convert_encoding
の使い方の紹介
http://hi.baidu.com/get52/blog/item/56f4d80336bf8ee208fa9307.html
mb_convert_encoding 関数は、PHP の内部マルチバイト文字列エンコーディング変換関数であり、必要に応じてエンコードできます。 as: GB2312 エンコード環境で Ajax を使用することによって発生する中国語の文字化けの問題を解決します。ほぼすべてのエンコーディングをサポートしており、バージョンは PHP 4 >= 4.0.6、PHP 5 をサポートしています。
関数プロトタイプ:
/**
* マルチバイト文字列エンコード変換関数
*
* @param string str エンコード変換が必要な文字列
* @param string to_encoding で変換を指定gb2312、gbk、utf-8 などの特定のエンコーディングに変換します。
* @parammixedfrom_encoding は、元の文字列のエンコーディングを混合して指定します。たとえば、JIS、eucjp-win、sjis-win 混合エンコーディングを指定します。同時に
* @return string
string mb_convert_encoding ( string str, string to_encoding [,mixed from_encoding] )
使用例:
1. GBK エンコードされた文字列を UTF-8 に変換します。エンコードされた文字列
header("content-Type: text/html; charset=Utf-8");
echo mb_convert_encoding("あなたは私の良い友達です", "UTF-8" , "GBK");
?>
2. UTF-8 エンコード文字列を GB2312 エンコード文字列に変換します
//このファイルを utf-8 エンコード形式のファイルに保存して、再度テストしてください
header("content-Type: text/html; charset=gb2312");
echo mb_convert_encoding("あなたは私の良い友達です", "gb312", "utf-8") ;
?>
3. ページ全体を変換します
この方法はすべてのコーディング環境に適用できます。最初の 128 文字 (表示文字) 以外の文字セットは NCR で表されます (「漢字」などの数字参照は、「汉字」の形式に変換されます)。どのコーディング環境でもページは正常に表示されます。
その方法は、php ファイルの先頭に次の 3 行のコードを追加することです:
mb_internal_encoding("gb2312") // ここの gb2312 は Web サイトの元のエンコーディングです
mb_http_output("HTML- ENTITIES");
ob_start('mb_output_handler');
ただし、mb_convert_encoding 関数を使用するには、PHP の mbstring (マルチバイト文字列) 拡張機能を有効にする必要があります。