function uniencode(text)
{
text = escape (text.toString()).replace(/ /g, "+");
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('%', '%u0025');
return text;
}
Of course the server must encode the The string is transcoded for the second time. Convert the string into UTF-8 encoding.
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 > into UTF-8 encoding. This method is suitable for various server environments.
Statement:The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn