php unescape for javascript

php unescape for javascript 

 

<?

function uniDecode($str,$charcode){
  $text = preg_replace_callback("/%u[0-9A-Za-z]{4}/",toUtf8,$str);
  //return mb_convert_encoding($text, $charcode, 'utf-8');
  return $text;
}

function toUtf8($ar){
  foreach($ar as $val){
    $val = intval(substr($val,2),16);
    echo "val=$val<br>\n";
   
    if($val < 0x7F){        // 0000-007F
        $c .= chr($val);
    }elseif($val < 0x800) { // 0080-0800
        $c .= chr(0xC0 | ($val / 64));
        $c .= chr(0x80 | ($val % 64));
    }else{                // 0800-FFFF
        $c .= chr(0xE0 | (($val / 64) / 64));
        $c .= chr(0x80 | (($val / 64) % 64));
        $c .= chr(0x80 | ($val % 64));
    }
  }
  return $c;
}

$str = "%23!%2Fusr%2Fbin%2Fperl%20%u4E2D%u56FD%u4E07%u7F51";

$str = uniDecode($str,'euc-cn');

echo "str=$str\n";

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值