设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 数据 手机
当前位置: 首页 > 站长学院 > PHP教程 > 正文

怎样使用PHP实现javascript的escape和unescape函数

发布时间:2022-07-20 12:39 所属栏目:121 来源:互联网
导读:
导读:前端开发工程师都知道javascript有编码函数escape()和对应的解码函数unescape(),而php中只有个urlencode和 urldecode,这个编码和解码函数对encodeURI和encodeURIComponent有效,但是对escape的是无效的。 javascript中的escape()函数和unescape()函数用户
  前端开发工程师都知道javascript有编码函数escape()和对应的解码函数unescape(),而php中只有个urlencode和 urldecode,这个编码和解码函数对encodeURI和encodeURIComponent有效,但是对escape的是无效的。
 
  javascript中的escape()函数和unescape()函数用户字符串编码,类似于PHP中的urlencode()函数,下面是php实现的escape函数代码:
 
  复制代码 代码如下:
 
  /**
 
  * js escape php 实现
 
  * @param $string the sting want to be escaped
 
  * @param $in_encoding
 
  * @param $out_encodin
 
  return $return;
 
  }
 
  对应的解码php unescape代码是:
 
  复制代码 代码如下:
 
  function unescape($str)
 
  {
 
  $ret = '';
 
  $len = strlen($str);
 
  for ($i = 0; $i < $len; $i ++)
 
  {
 
  if ($str[$i] == '%' && $str[$i + 1] == 'u')
 
  {
 
  $val = hexdec(substr($str, $i + 2, 4));
 
  if ($val < 0x7f)
 
  $ret .= chr($val);
 
  else
 
  if ($val < 0x800)
 
  $ret .= chr(0xc0 | ($val >> 6)) .
 
  chr(0x80 | ($val & 0x3f));
 
  else
 
  $ret .= chr(0xe0 | ($val >> 12)) .
 
  chr(0x80 | (($val >> 6) & 0x3f)) .
 
  chr(0x80 | ($val & 0x3f))
 
  }。
 

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读