PHP解密Unicode及Escape加密字符串
(编辑:jimmy 日期: 2025/11/1 浏览:3 次 )
本文给大家分享一个PHP解密Unicode及Escape加密字符串函数
<"chr(hexdec('\\1'))", $s);
}
function unicode2utf8($c) {
$str="";
if ($c < 0x80) {
$str.=chr($c);
} else if ($c < 0x800) {
$str.=chr(0xc0 | $c6);
$str.=chr(0x80 | $c & 0x3f);
} else if ($c < 0x10000) {
$str.=chr(0xe0 | $c12);
$str.=chr(0x80 | $c6 & 0x3f);
$str.=chr(0x80 | $c & 0x3f);
} else if ($c < 0x200000) {
$str.=chr(0xf0 | $c18);
$str.=chr(0x80 | $c12 & 0x3f);
$str.=chr(0x80 | $c6 & 0x3f);
$str.=chr(0x80 | $c & 0x3f);
}
return $str;
}
$str='%u5927%u5BB6%u597D%uFF0C我是孤魂!<br />\u8FD9\u662F\u6D4B\u8BD5\u6587\u672C\uFF01';
echo uni_decode($str); // 大家好,我是孤魂!这是测试文本!
在网上搜索一把,很多用php实现的escape函数,大同小异
function phpescape($str){
preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$newstr);
$ar = $newstr[0];
foreach($ar as $k=>$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,0,2);
}
$reString.="%u".$tmpString;
} else {
$reString.= rawurlencode($v);
}
}
return $reString;
}
以上所述就是本文的全部内容了,希望大家能够喜欢。
下一篇:PHP实现远程下载文件到本地