js中的escape及unescape函数的php实现代码_javascript技巧
程序员文章站
2022-04-04 22:57:08
...
function phpescape($str)
{
$sublen=strlen($str);
$retrunString="";
for ($i=0;$i {
if(ord($str[$i])>=127)
{
$tmpString=bin2hex(iconv("gb2312","ucs-2",substr($str,$i,2)));
//$tmpString=substr($tmpString,2,2).substr($tmpString,0,2);window下可能要打开此项
$retrunString.="%u".$tmpString;
$i++;
} else {
$retrunString.="%".dechex(ord($str[$i]));
}
}
return $retrunString;
}
function unescape($str) {
$str = rawurldecode($str);
preg_match_all("/%u.{4}|.{4};|\d+;|.+/U",$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v) {
if(substr($v,0,2) == "%u")
$ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,-4)));
elseif(substr($v,0,3) == "")
$ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,3,-1)));
elseif(substr($v,0,2) == "") {
$ar[$k] = iconv("UCS-2","GBK",pack("n",substr($v,2,-1)));
}
}
return join("",$ar);
}
?>
{
$sublen=strlen($str);
$retrunString="";
for ($i=0;$i {
if(ord($str[$i])>=127)
{
$tmpString=bin2hex(iconv("gb2312","ucs-2",substr($str,$i,2)));
//$tmpString=substr($tmpString,2,2).substr($tmpString,0,2);window下可能要打开此项
$retrunString.="%u".$tmpString;
$i++;
} else {
$retrunString.="%".dechex(ord($str[$i]));
}
}
return $retrunString;
}
function unescape($str) {
$str = rawurldecode($str);
preg_match_all("/%u.{4}|.{4};|\d+;|.+/U",$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v) {
if(substr($v,0,2) == "%u")
$ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,-4)));
elseif(substr($v,0,3) == "")
$ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,3,-1)));
elseif(substr($v,0,2) == "") {
$ar[$k] = iconv("UCS-2","GBK",pack("n",substr($v,2,-1)));
}
}
return join("",$ar);
}
?>
推荐阅读
-
如何使用PHP实现javascript的escape和unescape函数
-
在PHP中实现Javascript的escape()函数代码
-
PHP实现Javascript中的escape及unescape函数代码分享
-
在PHP中实现Javascript的escape()函数代码
-
PHP实现Javascript中的escape及unescape函数代码分享,escapeunescape_PHP教程
-
在PHP中实现Javascript的escape()函数代码_PHP教程
-
PHP实现Javascript中的escape及unescape函数代码分享_PHP教程
-
WordPress开发中短代码的实现及相关函数使用技巧,wordpress使用技巧_PHP教程
-
PHP实现Javascript中的escape及unescape函数代码分享_php实例
-
如何使用PHP实现javascript的escape和unescape函数