Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 使用从web浏览器接收的未知编码方法解码字符串_String_Character Encoding_Decode - Fatal编程技术网

String 使用从web浏览器接收的未知编码方法解码字符串

String 使用从web浏览器接收的未知编码方法解码字符串,string,character-encoding,decode,String,Character Encoding,Decode,在Web应用程序中,我处理对url的请求,如 http://example.com/<website-base-url> 使用urldecode返回进行解码 ã¥â¤â§ã¥â¤â´ã¨â´â´.cn 这似乎不是用户想要请求的域名 我尝试过urlencoding、base64、utf8和组合,但没有成功 任何关于如何将给定参数解码为utf8的建议?URL百分比编码只是对原始字节进行编码。它不会给您任何关于文本实际编码的提示。如果

在Web应用程序中,我处理对url的请求,如

    http://example.com/<website-base-url>
使用urldecode返回进行解码

    ã¥â¤â§ã¥â¤â´ã¨â´â´.cn
这似乎不是用户想要请求的域名

我尝试过urlencoding、base64、utf8和组合,但没有成功


任何关于如何将给定参数解码为utf8的建议?

URL百分比编码只是对原始字节进行编码。它不会给您任何关于文本实际编码的提示。如果您不知道这些字节代表什么编码,您所能做的就是猜测

php > $d = urldecode('%C3%83%C2%A3%C3%82%C2%A5%C3%83%C2%A2%C3%82%C2%A4%C3%83%C2%A2%C3%82%C2%A7%C3%83%C2%A3%C3%82%C2%A5%C3%83%C2%A2%C3%82%C2%A4%C3%83%C2%A2%C3%82%C2%B4%C3%83%C2%A3%C3%82%C2%A8%C3%83%C2%A2%C3%82%C2%B4%C3%83%C2%A2%C3%82%C2%B4.cn');

php > echo $d;
ã¥â¤â§ã¥â¤â´ã¨â´â´.cn

php > echo iconv('BIG5', 'UTF-8', $d);

php > echo iconv('Shift-JIS', 'UTF-8', $d);
テδ」テつ・テδ「テつ、テδ「テつァテδ」テつ・テδ「テつ、テδ「テつエテδ」テつィテδ「テつエテδ「テつエ.cn

php > echo iconv('GB18030', 'UTF-8', $d);
脙拢脗楼脙垄脗陇脙垄脗搂脙拢脗楼脙垄脗陇脙垄脗麓脙拢脗篓脙垄脗麓脙垄脗麓.cn
GB18030似乎是最好的候选,但即使是解码后的字符串看起来也有点太重复,不可能是真正有用的中文

php > $d = urldecode('%C3%83%C2%A3%C3%82%C2%A5%C3%83%C2%A2%C3%82%C2%A4%C3%83%C2%A2%C3%82%C2%A7%C3%83%C2%A3%C3%82%C2%A5%C3%83%C2%A2%C3%82%C2%A4%C3%83%C2%A2%C3%82%C2%B4%C3%83%C2%A3%C3%82%C2%A8%C3%83%C2%A2%C3%82%C2%B4%C3%83%C2%A2%C3%82%C2%B4.cn');

php > echo $d;
ã¥â¤â§ã¥â¤â´ã¨â´â´.cn

php > echo iconv('BIG5', 'UTF-8', $d);

php > echo iconv('Shift-JIS', 'UTF-8', $d);
テδ」テつ・テδ「テつ、テδ「テつァテδ」テつ・テδ「テつ、テδ「テつエテδ」テつィテδ「テつエテδ「テつエ.cn

php > echo iconv('GB18030', 'UTF-8', $d);
脙拢脗楼脙垄脗陇脙垄脗搂脙拢脗楼脙垄脗陇脙垄脗麓脙拢脗篓脙垄脗麓脙垄脗麓.cn