Maison  >  Article  >  développement back-end  >  php的汉字转换:Unicode(UTF8)至GBK_PHP教程

php的汉字转换:Unicode(UTF8)至GBK_PHP教程

WBOY
WBOYoriginal
2016-07-20 11:04:551003parcourir

P>秋水无恨 GBK Unicode UTF8 汉字 转换
php的汉字转换一直是比较麻烦的事
该类内置了四个过滤"[dec];","[hex];","%u[hex]","utf8转换"
方便用户的使用,同时也可自定义过滤进行自己喜欢的操作
qswhU.php 从这里下载
http://www.blueidea.com/user/qswh/qswhU.zip
class qswhU{
 var $qswhData;
 function qswhU($filename="qswhU.php"){
  $this->qswhData=file($filename);
 }
 
 function decode($str,$pattern=0){
  $arr=array("/(w+);/iU","/((%ww)+)/i","/%u(w{4,5})/iU");
  if(is_integer($pattern)){
      if($pattern>=count($arr))die("Invalid Function");
      $pattern=$arr[$pattern];
  }
  return preg_replace_callback($pattern,array($this,"u2gb"),$str);
 }
 
 function u2gb($arr){
  /******(qiushuiwuhen 2002-8-15)******/
  $ret="";$str=$arr[1];
  if(preg_match_all("/%w{2}/",$str,$matches)){
     for($i=0;$i      $chr1=hexdec(substr($matches[0][$i],1));
      $arr=array("f0","e0","c0","0");
      for($j=0;$jhexdec($arr[$j]))break;
      $chr=hexdec(substr($matches[0][$i],1))-hexdec($arr[$j]);
      while(++$j      $str=dechex($chr);
      if(strlen($str)==4){
     $p=hexdec(substr($str,0,2))-0x4d;
     $q=hexdec(substr($str,2))*4;

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/445172.htmlTechArticleP秋水无恨 GBK Unicode UTF8 汉字 转换 php的汉字转换一直是比较麻烦的事 该类内置了四个过滤#[dec];,#x[hex];,%u[hex],utf8转换 方便用户的使用,同时...
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn