利用PHP怎么对Unicode编码进行转换

  介绍

今天就跟大家聊聊有关利用PHP怎么对Unicode编码进行转换,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

具体如下:

& lt; PHP ?/* *   *,str 美元;原始中文字符串   *,encoding 美元;原始字符串的编码,默认utf - 8   *,prefix 美元;编码后的前缀,默认“,#“;   *,postfix 美元;编码后的后缀,默认”;“   */function  unicode_encode (str美元,美元encoding =, & # 39; utf - 8 # 39;,, prefix 美元;=,& # 39;,# & # 39;,,postfix 美元;=,& # 39;;& # 39;),{   ,//将字符串拆分   ,str 美元;=,iconv (“UTF-8",,“gb2312",, str美元);   ,cind 美元;=,0;   数组,arr_cont 美元;=,();   ,for ($小姐:=,0;,美元小姐:& lt;, strlen (str);,我+ +美元),{   ,if  (strlen (substr (str美元,cind美元,1)),祝辞,0),{   if 才能;(奥德(substr (str美元,cind美元,1)),& lt;, 0最后),{,//如果为英文则取1个字节   array_push才能(arr_cont美元,substr (str美元,cind美元,1));   美元才能cind + +;   ,,},{else    array_push才能(arr_cont美元,substr (str美元,cind美元,2));   美元才能cind +=2;   ,,}   ,}   ,}   ,foreach  (arr_cont 美元;as 及美元行),{   ,row 美元;=,iconv (“gb2312",,“UTF-8",,美元行);   ,}   ,//转换Unicode码   美元,foreach  (arr_cont  as  key 美元;=祝辞,美元值),{   ,unicodestr美元。=$ prefix 只base_convert (bin2hex (iconv (& # 39; utf - 8 # 39;,, & # 39; ucs - 4 # 39;,,美元值)),,16日,10),美元后缀;   ,}   ,return  unicodestr美元;   }/* *   *,str 美元;Unicode编码后的字符串   *,decoding 美元;原始字符串的编码,默认utf - 8   *,prefix 美元;编码字符串的前缀,默认“,#“;   *,postfix 美元;编码字符串的后缀,默认”;“   */function  unicode_decode (unistr美元,美元encoding =, & # 39; utf - 8 # 39;,, prefix 美元;=,& # 39;,# & # 39;,,postfix 美元;=,& # 39;;& # 39;),{   ,arruni 美元;=,爆炸($前缀,unistr美元);   ,unistr 美元;=,& # 39;& # 39;;   ,for ($小姐:=,1,$ len =, count ($ arruni);,美元小姐:& lt;, len;美元,美元我+ +),{   美元,if  (strlen(后缀),祝辞,0),{   美元才能arruni [$ i],=, substr (arruni美元($ i), 0,, strlen ($ arruni [$ i]),安康;strlen(后缀)美元);   ,}   ,temp 美元;=,intval中($ arruni [$ i]);   unistr 美元。=,(temp 美元;& lt;, 256), ?,空空的(0),只空空的(临时)美元,:,空空(temp 美元/,256),只为了(temp 美元;%,256);   ,}   ,return  iconv (& # 39; ucs - 2 # 39;,,编码,美元,美元unistr);   }   时间=美元str “PHP编程:www.jb51.net";   $ unistr =, unicode_encode (str);   $ unistr2 =, unicode_decode ($ unistr);   echo  unistr 美元;只& # 39;& lt; br /祝辞;& # 39;;   echo  unistr2 美元;只& # 39;& lt; br /祝辞;& # 39;;   unistr 美元;=,unicode_encode (str美元,& # 39;gbk # 39;, & # 39; \ \ u # 39;);   unistr2 美元;=,unicode_decode (unistr美元,& # 39;gbk # 39;, & # 39; \ \ u # 39;);   echo  unistr 美元;只& # 39;& lt; br /祝辞;& # 39;;   echo  unistr2 美元;只& # 39;& lt; br /祝辞;& # 39;;

<>强PS:下面测试过这个函数比较好,用该代码需要在utf - 8编码环境下运行

function  unicode_encode(名字),{//Unicode编码   ,jsonarr 美元;=,数组($名称);   ,jsonstr 美元;=,json_encode ($ jsonarr);   ,if  (empty  (jsonstr美元))   ,return  & # 39; & # 39;;   jsonstr美元,return  substr (2, 2);   }   function  unicode_decode(名字),{//Unicode解码      ,json 美元;=,& # 39;{“str":“& # 39;,只name 美元;只& # 39;“}& # 39;;   ,arr 美元;=,json_decode (json,美元,真的);   ,if  (empty  (arr)美元)   ,return  & # 39; & # 39;;   ,return  arr美元[& # 39;str # 39;];      }      时间=美元test “\ u811a \ u672c \ u4e4b \ u5bb6";   echo “unicode解码:“.unicode_decode(测试)美元霸主地位;& lt; br/在“;   echo “unicode编码:“.unicode_encode(& # 39; & # 39;)干净& lt; br/在“;

看完上述内容,你们对利用PHP怎么对unicode编码进行转换有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

利用PHP怎么对Unicode编码进行转换