ホームページ >バックエンド開発 >PHPチュートリアル >PHPがutf-8とGB2312エンコードの相互変換を実現

PHPがutf-8とGB2312エンコードの相互変換を実現

WBOY
WBOYオリジナル
2016-07-25 09:05:40762ブラウズ
  1. /*********************************************
  2. *
  3. * 関数名: get_utf8_to_gb ($value)
  4. * 機能: utf8 でエンコードされた文字列を gb2312 エンコードに変換します
  5. * 著者: Liu Xianzhong
  6. * 日付: 2011-11-09
  7. *
  8. ***************** ** ****************************/
  9. function get_utf8_to_gb($value){
  10. $value_1= $value;
  11. $value_2 = @iconv( "utf-8", "gb2312// IGNORE",$value_1);//エラーを防ぐために @ を使用します。変換文字列内の文字にターゲット文字セットに対応する文字がない場合、この文字の後の部分、つまり次の内容は無視されます。結果の文字列は不完全です。この時点では //IGNORE を使用します
  12. $value_3 = @iconv( "gb2312", "utf-8//IGNORE",$value_2);
  13. if (strlen($value_1) == strlen($ value_3) )
  14. {
  15. return $value_2;
  16. }else
  17. {
  18. return $value_1;
  19. }
  20. }
  21. /**********************************************
  22. *
  23. * 関数名: get_gb_to_utf8 ($value)
  24. * 機能: gb2312 でエンコードされた文字列を utf8 エンコードに変換します
  25. * 著者: Liu Xianzhong
  26. * 日付: 2011-11-09
  27. *
  28. ***************** ** ****************************/
  29. function get_gb_to_utf8($value){
  30. $value_1= $value;
  31. $ value_2 = @iconv( "gb2312", "utf-8//IGNORE",$value_1);
  32. $value_3 = @iconv( "utf-8", "gb2312//IGNORE",$value_2);
  33. if (strlen ($ value_1) == strlen($value_3))
  34. {
  35. return $value_2;
  36. }else
  37. {
  38. return $value_1;
  39. }
  40. }
  41. ?>
コードをコピー


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