加入收藏 | 设为首页 | 会员中心 | 我要投稿 丽水站长网 (https://www.0578zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-07-21 17:49:56 所属栏目:PHP教程 来源:互联网
导读:前端开发工程师都知道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))
 
  }。
 

(编辑:丽水站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读