最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS 文字符串轉換unicode編碼函數

 更新時間:2009年05月30日 22:37:45   作者:  
AJAX傳遞中文字符串時必須把中文字符串編碼成unicode,一般會用到JS的自帶函數escape().不過找到了更好的函數來確決中文字符轉換成unicode編碼的函數
復制代碼 代碼如下:

function uniencode(text)
{
text = escape(text.toString()).replace(/\+/g, "%2B");
var matches = text.match(/(%([0-9A-F]{2}))/gi);
if (matches)
{
for (var matchid = 0; matchid < matches.length; matchid++)
{
var code = matches[matchid].substring(1,3);
if (parseInt(code, 16) >= 128)
{
text = text.replace(matches[matchid], '%u00' + code);
}
}
}
text = text.replace('%25', '%u0025');
return text;
}

當然服務器端要對編碼過的字符串進行第二次轉碼.把字符串轉換成UTF-8編碼. 
復制代碼 代碼如下:

function convert_int_to_utf8($intval)
{
$intval = intval($intval);
switch ($intval)
{
// 1 byte, 7 bits
case 0:
return chr(0);
case ($intval & 0x7F):
return chr($intval);
// 2 bytes, 11 bits
case ($intval & 0x7FF):
return chr(0xC0 | (($intval >> 6) & 0x1F)) .
chr(0x80 | ($intval & 0x3F));
// 3 bytes, 16 bits
case ($intval & 0xFFFF):
return chr(0xE0 | (($intval >> 12) & 0x0F)) .
chr(0x80 | (($intval >> 6) & 0x3F)) .
chr (0x80 | ($intval & 0x3F));
// 4 bytes, 21 bits
case ($intval & 0x1FFFFF):
return chr(0xF0 | ($intval >> 18)) .
chr(0x80 | (($intval >> 12) & 0x3F)) .
chr(0x80 | (($intval >> 6) & 0x3F)) .
chr(0x80 | ($intval & 0x3F));
}
}

這樣中文字符串就可以轉換成UTF-8編碼.這種方法適合各種服務器環(huán)境..

相關文章

最新評論

沁阳市| 镇康县| 武宣县| 呼和浩特市| 瑞安市| 额尔古纳市| 涟源市| 攀枝花市| 锦州市| 昆山市| 万载县| 天水市| 宜春市| 南宁市| 渑池县| 云南省| 财经| 大埔县| 沁阳市| 商南县| 高碑店市| 水城县| 渭源县| 东至县| 庆安县| 青川县| 喜德县| 周宁县| 龙山县| 铜川市| 锦州市| 鄯善县| 景泰县| 三原县| 汪清县| 镇远县| 禹州市| 榆社县| 林西县| 青浦区| 威远县|