ホームページ >バックエンド開発 >PHPチュートリアル >PHP_PHP チュートリアルで iconv 関数文字列を GBK から UTF8 文字セットに変換します。
PHP の iconv 関数文字列は GBK から UTF8 文字セットに変換します
1. iconv() の概要
iconv 関数は、既知の文字セット ファイルを別の既知の文字セット ファイルに変換できます。例: GB2312 から UTF-8 に変換します。
iconv 関数は PHP チュートリアル 5 に組み込まれており、GB 文字セットはデフォルトでオンになっています。
2. iconv() エラー
iconv は文字「-」を gb2312 に変換するときにエラーを起こします。解決策は、次のように、変換する必要があるエンコーディングの後ろ、つまり iconv 関数の 2 番目のパラメーターの後に「//IGNORE」を追加することです。
iconv("UTF-8", "GB2312//IGNORE", $data)
ignore は、変換中にエラーを無視することを意味します。ignore パラメーターがないと、この文字に続くすべての文字列を保存できません。
3. iconv() の例
例 1:
echo $str= ‘こんにちは、ここではコーヒーを販売しています!’;
エコー '
';
echo iconv('GB2312', 'UTF-8', $str); //文字列エンコーディングを GB2312 から UTF-8 に変換します
エコー '
';
echo iconv_substr($str, 1, 1, 'UTF-8') // バイト数ではなく文字数で切り詰めます
print_r(iconv_get_encoding()); // 現在のページのエンコーディング情報を取得します
echo iconv_strlen($str, 'UTF-8') // 設定されたエンコーディングの文字列長を取得します
?>
例 2:
PHP ファイルが UTF-8 でエンコードされている場合、次のコードは正しく出力されます:
$str='百度が大好き';
$utf='';
for ($i=0;$i
?>PHP ファイルが GB の場合、次のコードが機能します:
$str='百度が大好き';
$str=iconv("GBK", "UTF-8", $str);
$utf='';
for ($i=0;$i
?>上記の場合、プログラムの出力は次のようになります:
%E6%88%91%E7%88%B1%E7%99%BE%E5%BA%A6