前端技术 手机教程
程序开发 平面动画
系统软件 CMS教程
CMS教程 在线手册
资源下载 网络安全
精准搜索请尝试:精确搜索

javascript对php urlencode()函数生成的编码进行解码的办法

2019-07-24 10:51:27 来源:转载 作者:广树

下面的javascript函数可以对php urlencode函数生成的编码做解码操作:


function urldecode(encodedString){
  var output = encodedString;
  var binVal, thisString;
  var myregexp = /(%[^%]{2})/;
  function utf8to16(str)
  {
      var out, i, len, c;
      var char2, char3;
      out = "";
      len = str.length;
      i = 0;
      while(i < len)
      {
          c = str.charCodeAt(i++);
          switch(c >> 4)
          {
              case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
              out += str.charAt(i-1);
              break;
              case 12: case 13:
              char2 = str.charCodeAt(i++);
              out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
              break;
              case 14:
              char2 = str.charCodeAt(i++);
              char3 = str.charCodeAt(i++);
              out += String.fromCharCode(((c & 0x0F) << 12) | ((char2 & 0x3F) << 6) | ((char3 & 0x3F) << 0));
              break;
          }
      }
      return out;
  }
  while((match = myregexp.exec(output)) != null
              && match.length > 1
              && match[1] != '')
  {
      binVal = parseInt(match[1].substr(1),16);
      thisString = String.fromCharCode(binVal);
      output = output.replace(match[1], thisString);
  }
  output = output.replace(/\\+/g, " ");
  output = utf8to16(output);
  return output;
}
本文关键词:javascript php urlencode 解码

相关文章

零五网,分享IT知识,国内顶级IT知识门户网站。

Copyright (C) www.02405.com, All Rights Reserved.

零五网 版权所有 辽ICP备13002105号-1