Heim  >  Artikel  >  Backend-Entwicklung  >  PHP中的UNICODE 编码与解码_PHP教程

PHP中的UNICODE 编码与解码_PHP教程

WBOY
WBOYOriginal
2016-07-20 11:16:491462Durchsuche

本篇文章是对PHP中的UNICODE 编码与解码进行了详细的分析介绍,需要的朋友参考下  

方法一:

复制代码 代码如下:
function unicode_encode($name)
{
$name = iconv('UTF-8', 'UCS-2', $name);
$len = strlen($name);
$str = '';
for ($i = 0; $i {
$c = $name[$i];
$c2 = $name[$i + 1];
if (ord($c) > 0)
{ //两个字节的文字
$str .= 'u'.base_convert(ord($c), 10, 16).str_pad(base_convert(ord($c2), 10, 16), 2, 0, STR_PAD_LEFT);
}
else
{
$str .= $c2;
}
}
return $str;
}
//将UNICODE编码后的内容进行解码
function unicode_decode($name)
{
//转换编码,将Unicode编码转换成可以浏览的utf-8编码
$pattern = '/([w]+)|(u([w]{4}))/i';
preg_match_all($pattern, $name, $matches);
if (!empty($matches))
{
$name = '';
for ($j = 0; $j {
$str = $matches[0][$j];
if (strpos($str, 'u') === 0)
{
$code = base_convert(substr($str, 2, 2), 16, 10);
$code2 = base_convert(substr($str, 4), 16, 10);
$c = chr($code).chr($code2);
$c = iconv('UCS-2', 'UTF-8', $c);
$name .= $c;
}
else
{
$name .= $str;
}
}
}
return $name;
}


方法二:

复制代码 代码如下:


function unicode2utf8($str){
if(!$str) return $str;
$decode = json_decode($str);
if($decode) return $decode;
$str = '["' . $str . '"]';
$decode = json_decode($str);
if(count($decode) == 1){
return $decode[0];
}
return $str;
}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/372321.htmlTechArticle本篇文章是对PHP中的UNICODE 编码与解码进行了详细的分析介绍,需要的朋友参考下 方法一: 复制代码 代码如下: ?php function unicode_encode($name)...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn