ホームページ >バックエンド開発 >PHPの問題 >PHPで文字列をutf8形式に変換する方法

PHPで文字列をutf8形式に変換する方法

醉折花枝作酒筹
醉折花枝作酒筹オリジナル
2021-04-02 10:59:313081ブラウズ

方法: 1. iconv 関数を使用します。構文 "iconv(元の文字タイプ, 'UTF-8', string)"; 2. mb_convert_encoding 関数を使用します。構文 "mb_convert_encoding(string, 'UTF-8" ' 、オリジナルキャラクタータイプ)」。

PHPで文字列をutf8形式に変換する方法

#この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

1. iconv を使用します。 () function
iconv 関数は、既知の文字セット ファイルを別の既知の文字セット ファイルに変換できます。例: GB2312 から UTF-8 に変換します。 iconv は文字「—」を「gb2312」に変換するときにエラーを起こします。解決策は、変換する必要があるエンコーディングの後に「//IGNORE」を追加することです。 2 番目の iconv 関数のパラメータ。次のように:

 iconv("UTF-8", "GB2312//IGNORE", $data)

ignore は、変換中にエラーを無視することを意味します。ignore パラメータを指定しないと、この文字に続くすべての文字列を保存できません。

 <?php 
  echo $str= ‘你好,这里是卖咖啡!&#39;; 
  echo &#39;<br />&#39;; 
  echo iconv(&#39;GB2312&#39;, &#39;UTF-8&#39;, $str); //将字符串的编码从GB2312转到UTF-8 
?>

2.「mb_convert_encoding」を使用して文字列を UTF8 文字セットに変換します

mb_convert_encoding を使用する場合は、まず文字を知っておく必要がありますエンコードが間違っている場合は文字化けが発生しますので、mb_detect_encodingを使用することで文字列のエンコードを自動判別し、国際標準のutf-8エンコードに変換します。

<?php
    $encode = mb_detect_encoding($str, array("ASCII",&#39;UTF-8&#39;,"GB2312","GBK",&#39;BIG5&#39;,&#39;LATIN1&#39;));
    if($encode != &#39;UTF-8&#39;){
    $name = mb_convert_encoding($name, &#39;UTF-8&#39;, $encode);
  }
?>

推奨チュートリアル:

php ビデオ チュートリアル

以上がPHPで文字列をutf8形式に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。