杨小杰博客提供免费教程下载和网站搭建技术教程,主要分享和发布网站源码,致力创造一个高质量网络资源教程的分享平台

php Unicode解码方法

Young小杰2018-6-13 10:16网站搭建(0)419查询中……小标签: php 字符编码

Escape/Unescape加密解码/编码解码,又叫%u编码,从以往经验看编码字符串出现有"u",它是unicode编码,那么Escape编码采用是那一种unicode实现形式呢。其实是UTF-16BE模式。这样一来问题非常简单了。 Escape编码/加密,就是字符对应UTF-16 16进制表示方式前面加%u。Unescape解码/解密, 就是去掉"%u"后,将16进制字符还原后,由utf-16转码到自己目标字符。如:字符“中”,UTF-16BE是:“6d93”,因此Escape是 “%u6d93”,反之也一样!因为目前%字符,常用作URL编码,所以%u这样编码已经逐渐被废弃了!

function utf8_urldecode($str) 
{
	$str = preg_replace("/%u([0-9a-f]{3,4})/i","&#x\\1;",urldecode($str));
	return html_entity_decode($str,null,'UTF-8');;
}
"&#x"开头的,后边跟16进制的数, 是浏览器识别的编码方式,  这个函数将"%u" 换做了 "&#x", 输出到浏览器就自动转换成汉字显示了




评论排行榜

(切勿水评,一经发现封IP)

发表评论: