PHP-php如何将包含汉字的URL转为字母或数字

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 12:02:34

PHP-php如何将包含汉字的URL转为字母或数字
PHP-php如何将包含汉字的URL转为字母或数字

PHP-php如何将包含汉字的URL转为字母或数字
function redirectLink(url, link) {
    var _url = base64decode(url);
    link.setAttribute('href', _url);
    return false;
}

function modifyLink(url){
    url = base64decode(url);
    window.location.href=url;
    return false;
}
function base64decode(str) {
    var c1, c2, c3, c4;
    var i, len, out;

    len = str.length;
    i = 0;
    out = "";
    while(i < len) {
     /* c1 */
    do {
             c1 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
    } while(i < len && c1 == -1);
    if(c1 == -1)
            break;

    /* c2 */
    do {
            c2 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
    } while(i < len && c2 == -1);
    if(c2 == -1)
            break;
     out += String.fromCharCode((c1 << 2) | ((c2 & 0x30) >> 4));
     /* c3 */
    do {
            c3 = str.charCodeAt(i++) & 0xff;
            if(c3 == 61)
     return out;
            c3 = base64DecodeChars[c3];
    } while(i < len && c3 == -1);
    if(c3 == -1)
            break;
     out += String.fromCharCode(((c2 & 0XF) << 4) | ((c3 & 0x3C) >> 2));
     /* c4 */
    do {
            c4 = str.charCodeAt(i++) & 0xff;
            if(c4 == 61)
     return out;
            c4 = base64DecodeChars[c4];
    } while(i < len && c4 == -1);
    if(c4 == -1)
            break;
    out += String.fromCharCode(((c3 & 0x03) << 6) | c4);
         }
         return out;