PHP解密Unicode及Escape加密字符串

前端之家收集整理的这篇文章主要介绍了PHP解密Unicode及Escape加密字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文给大家分享一个PHP解密Unicode及Escape加密字符串函数

PHP;"> PHP function uni_decode($s) { preg_match_all('/\&\#([0-9]{2,5})\;/',$s,$html_uni); preg_match_all('/[\\\%]u([0-9a-f]{4})/ie',$js_uni); $source = array_merge($html_uni[0],$js_uni[0]); $js = array(); for($i=0;$ifunction unicode2utf8($c) {
$str="";
if ($c < 0x80) {
$str.=chr($c);
} else if ($c < 0x800) {
$str.=chr(0xc0 | $c>>6);
$str.=chr(0x80 | $c & 0x3f);
} else if ($c < 0x10000) {
$str.=chr(0xe0 | $c>>12);
$str.=chr(0x80 | $c>>6 & 0x3f);
$str.=chr(0x80 | $c & 0x3f);
} else if ($c < 0x200000) {
$str.=chr(0xf0 | $c>>18);
$str.=chr(0x80 | $c>>12 & 0x3f);
$str.=chr(0x80 | $c>>6 & 0x3f);
$str.=chr(0x80 | $c & 0x3f);
}
return $str;
}

$str='%u5927%u5BB6%u597D%uFF0C我是孤魂!
\u8FD9\u662F\u6D4B\u8BD5\u6587\u672C\uFF01';
echo uni_decode($str); // 大家好,我是孤魂!这是测试文本!

在网上搜索一把,很多用PHP实现的escape函数,大同小异

$v){ if(ord($ar[$k])>=127){ $tmpString=bin2hex(iconv("GBK","ucs-2",$v)); if (!eregi("WIN",PHP_OS)){ $tmpString = substr($tmpString,2,2).substr($tmpString,2); } $reString.="%u".$tmpString; } else { $reString.= rawurlencode($v); } } return $reString; }

以上所述就是本文的全部内容了,希望大家能够喜欢。

猜你在找的PHP相关文章