Board logo

标题: PHP操作JS的escpae函数 [打印本页]

作者: Nothing    时间: 2007-12-24 13:15     标题: PHP操作JS的escpae函数

<?
function phpescape($str)
{
         $sublen=strlen($str);
         $retrunString="";
         for ($i=0;$i<$sublen;$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);
}
?>





欢迎光临 编程开发论坛 (http://bbs.lihuasoft.net/) Powered by Discuz! 6.0.0