VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php制作unicode解码工具(unicode编码转换器)代码分享

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

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

相关教程