一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

如何使用PHP實現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_encoding     
 */
function escape($string, $in_encoding = 'UTF-8',$out_encoding = 'UCS-2') {
    $return = '';
    if (function_exists('mb_get_info')) {
        for($x = 0; $x < mb_strlen ( $string, $in_encoding ); $x ++) {
            $str = mb_substr ( $string, $x, 1, $in_encoding );
            if (strlen ( $str ) > 1) { // 多字節字符
                $return .= '%u' . strtoupper ( bin2hex ( mb_convert_encoding ( $str, $out_encoding, $in_encoding ) ) );
            } else {
                $return .= '%' . strtoupper ( bin2hex ( $str ) );
            }
        }
    }
    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));
            $i += 5;
        } else 
            if ($str[$i] == '%')
            {
                $ret .= urldecode(substr($str, $i, 3));
                $i += 2;
            } else
                $ret .= $str[$i];
    }
    return $ret;
}

php技術如何使用PHP實現javascript的escape和unescape函數,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 91精品全国免费观看含羞草 | 亚洲国产成人精品女人久久久 | 久久五月激情婷婷日韩 | 亚洲伊人久久大香线蕉结合 | 永久黄网站色视频免费观看 | 国产精品短视频 | 黄视频在线观看网站 | 韩国一级网站 | 日韩字幕无线乱码 | 国内精品福利视频 | 中文一区在线观看 | 91精品福利一区二区三区野战 | 91麻豆精品国产91久久久久 | 黄色在线免费观看网址 | 久久精彩免费视频 | 欧美一区二区精品 | 婷婷久久综合 | 色老板网站 | 巨大巨粗巨长 黑人长吊视频 | 激情小说亚洲图片 | 亚洲黄色免费观看 | 国产婷婷色一区二区三区深爱网 | 伊人久久久久久久久久 | 精品美女视频在线观看2023 | 亚洲国产成人综合精品2020 | 亚洲国产成人99精品激情在线 | 中文字幕在线精品 | 亚洲综合激情六月婷婷在线观看 | 色婷婷色99国产综合精品 | 2017天天干 | 欧美精品成人久久网站 | 亚洲国产人成在线观看 | 国产亚洲视频在线观看 | 亚洲香蕉久久一区二区三区四区 | 四虎永久在线观看视频精品 | www激情五月| 小说区图片区综合视频区 | 日本视频一区二区免费播放 | 婷婷丁香激情五月 | 日本大片免a费观看视频+播放器 | 激情文学综合 |