多个URL编码会导致不同的字符串吗?

时间:2011-06-10 14:17:15

标签: php http url encoding

假设一个URL对字符串进行编码。

urlencode(String1); =>成为String2

String2上的连续网址编码是否会创建与String 2不同的字符串?

意思是,urlencode(String2) == String2

urlencode(String2) != String2

1 个答案:

答案 0 :(得分:6)

如果原始字符串包含任何非alpha和非-_字符,它肯定会创建不同的字符串。

因此,如果第一个urlencode甚至对一个非空格进行编码,它会在结果字符串中添加%作为%XX模式的一部分。随后的urlencode将重新编码%(并开始将原始字符串重新编码而无法识别)。

See it in action