php で文字列を utf8 に変換する方法: 最初に PHP サンプル ファイルを作成し、次に「iconv('GB2312', 'UTF-8', $str);」を直接使用して文字列エンコーディングを Just GB2312をUTF8に変換します。
この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、DELL G3 コンピューター
PHP は文字列を GBK から UTF8 に変換しますiconv 文字セット経由
1. iconv() の概要
iconv 関数は、既知の文字セット ファイルを別の既知の文字セット ファイルに変換できます。例: GB2312 から UTF-8 に変換します。
iconv 関数は php5 に組み込まれており、GB 文字セットはデフォルトでオンになっています。
2. iconv() エラー
iconv は文字「-」を gb2312 に変換するときにエラーを起こします。解決策は、変換する必要があるエンコーディングの 2 番目の後に「//IGNORE」を追加することです。 iconv 関数のパラメータ. After. 次のように:
コードは次のとおりです:
iconv("UTF-8", "GB2312//IGNORE", $data)
ignore は変換中にエラーを無視することを意味します.ignore パラメータを指定しないと、これに続くすべての文字列が無視されますキャラクターは保存できません。
3. iconv() の例
例 1:
コードは次のとおりです:
<?php echo $str= ‘你好,这里是卖咖啡!'; echo '<br />'; echo iconv('GB2312', 'UTF-8', $str); //将字符串的编码从GB2312转到UTF-8 echo '<br />'; echo iconv_substr($str, 1, 1, 'UTF-8'); //按字符个数截取而非字节 print_r(iconv_get_encoding()); //得到当前页面编码信息 echo iconv_strlen($str, 'UTF-8'); //得到设定编码的字符串长度 ?>
例 2:
PHP ファイルが UTF の場合8 でエンコードされている場合、次のコードは正しく出力できます:
コードは次のとおりです:
<?php $str='我爱百度'; $utf=''; for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); echo $utf; ?>
PHP ファイルが GB の場合、次のコードは機能します:
コードは次のとおりです:
<?php $str='我爱百度'; $str=iconv("GBK", "UTF-8", $str); $utf=''; for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); echo $utf; ?>
上記の場合、プログラムの出力は次のとおりです:
我愛百度
推奨学習: "PHPビデオチュートリアル 》
以上がPHPで文字列をutf8に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。