1. iconv()概要
iconv 関数は、既知の 文字セット ファイル を別の既知の文字セット ファイルに変換できます。例: GB2312 から UTF-8 に変換します。
iconv 関数は php5 に組み込まれており、GB 文字セットはデフォルトでオンになっています。
2.
iconv()エラー
iconv は文字「-」を gb2312 に変換するときにエラーを起こします。解決策は、変換する必要があるエンコーディングの後、つまり 2 番目のパラメーターの後に「
//IGNORE」を追加することです。 iconv 関数の。以下のように:
iconv("UTF-8", "GB2312//IGNORE", $data)
Ignore は、変換中にエラーを無視することを意味します。ignore パラメーターを指定しないと、この文字に続くすべての文字列を保存できません。
3.
iconv()例
例 1:
echo $str= 'こんにちは、ここでコーヒーを販売しています!'
echo ' ';
echo iconv('GB2312', 'UTF-8', $str); //文字列エンコーディングを GB2312 から UTF-8 に変換します
echo '';
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
echo $utf;
?>
PHP ファイルが GB の場合、次のコードが機能します:
$str='百度が大好き';
$str=iconv("GBK", "UTF-8", $str);
$utf='';
for ($i=0;$i
echo $utf;
?>
上記の場合、プログラムの出力は次のようになります:
%E6%88%91%E7%88%B1%E7%99%BE%E5%BA%A6