ホームページ  >  記事  >  バックエンド開発  >  PHPのiconv関数の使用例と注意点

PHPのiconv関数の使用例と注意点

WBOY
WBOYオリジナル
2016-07-25 08:46:371169ブラウズ
  1. echo $str= 'こんにちは、ここではコーヒーを販売しています!'
  2. echo '
    '
  3. echo iconv('GB2312', 'UTF-8'; str); //文字列エンコーディングを GB2312 から UTF-8 に変換します
  4. echo '
    ';
  5. echo iconv_substr($str, 1, 1, 'UTF-8'); // 数値を切り捨てますバイトではなく文字数
  6. print_r(iconv_get_encoding()); //現在のページのエンコーディング情報を取得します
  7. echo iconv_strlen($str, 'UTF-8'); //設定されたエンコーディングの文字列長を取得します
  8. //このように使用される bbs.it-home.org もあります
  9. $content = iconv("UTF-8","gbk//TRANSLIT",$content);
コードをコピーします;

phpでiconv関数を使用する際の注意点

iconv() を使用して、出力文字エンコーディングでサポートされていない文字 (iconv('UTF-8', 'GB2312', '囧') など) を変換すると、次のエラー メッセージが表示されます。 注意: iconv() [function.iconv]: 入力文字列で不正な文字が検出されました ... GB2312 は簡体字中国語を表し、「囧」などのより複雑な中国語文字や一部の特殊文字をサポートしていないため、当然エラーが発生します。

解決策は 2 つあります: 1. iconv('UTF-8', 'GBK', '囧') などの出力文字エンコーディングの範囲を拡張します。GBK はより幅広い文字をサポートしているため、正しく出力できます。 2. iconv('UTF-8', 'GB2312//IGNORE', '囧') のように、出力文字エンコーディング文字列の後に「//IGNORE」を追加します。これにより、変換できない文字が無視され、エラーが回避されます。は正しく出力できません(つまり、空白は出力されません)。


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