首页 > 语言 > PHP > 正文

php制作unicode解码工具(unicode编码转换器)代码分享

2024-09-04 11:46:53
字体:
来源:转载
供稿:网友

php制作Unicode编码解码在线转换工具代码分享。

  1. <?php 
  2. function unicode_encode($name
  3.     $name = iconv('UTF-8''UCS-2'$name); 
  4.     $len = strlen($name); 
  5.     $str = ''
  6.     for ($i = 0; $i < $len - 1; $i = $i + 2) 
  7.     { 
  8.         $c = $name[$i]; 
  9.         $c2 = $name[$i + 1]; 
  10.         if (ord($c) > 0) 
  11.         {   //两个字节的文字 
  12.             $str .= '/u'.base_convert(ord($c), 10, 16).str_pad(base_convert(ord($c2), 10, 16), 2, 0, STR_PAD_LEFT); 
  13.         } 
  14.         else 
  15.         { 
  16.             $str .= $c2
  17.         } 
  18.     } 
  19.     return $str
  20.   
  21. //将UNICODE编码后的内容进行解码 
  22. function unicode_decode($name
  23.     //转换编码,将Unicode编码转换成可以浏览的utf-8编码 
  24.     $pattern = '/([/w]+)|(///u([/w]{4}))/i'
  25.     preg_match_all($pattern$name$matches); 
  26.     if (!emptyempty($matches)) 
  27.     { 
  28.         $name = ''
  29.         for ($j = 0; $j < count($matches[0]); $j++) 
  30.         { 
  31.             $str = $matches[0][$j]; 
  32.             if (strpos($str'//u') === 0) 
  33.             { 
  34.                 $code = base_convert(substr($str, 2, 2), 16, 10); 
  35.                 $code2 = base_convert(substr($str, 4), 16, 10); 
  36.                 $c = chr($code).chr($code2); 
  37.                 $c = iconv('UCS-2''UTF-8'$c); 
  38.                 $name .= $c
  39.             } //Vevb.com 
  40.             else 
  41.             { 
  42.                 $name .= $str
  43.             } 
  44.         } 
  45.     } 
  46.     return $name

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表