Url编码PHP

时间:2011-05-07 12:38:37

标签: php url encoding

嘿伙计们, 我对urlencode和rawurlencode有疑问......

我测试了它们,它们产生不同的结果,如firefox&一些在线编码器...

实施例

Firefox&编码器

ä = %C3%A4
ß = %C3%9F

PHP rawurlencode&进行urlencode

ß = %DF

ä = %E4

除了硬编码和替换外,任何人都有一些想法吗?

干杯

2 个答案:

答案 0 :(得分:3)

它们产生不同的输出,因为您提供了不同的输入,即不同的字符编码:Firefox使用UTF-8,而您的PHP脚本使用Windows-1252。虽然在两个字符集中,字符位于相同的位置(ß = 0xDF,ä = 0xE4),即具有相同的代码点,但它们对代码点的编码方式不同:

 CP   | UTF-8  | Windows-1252
------+--------+--------------
 0xDF | 0xC39F |         0xDF
 0xE4 | 0xC3A4 |         0xE4

使用相同的字符编码(最好是UTF-8),你会得到相同的结果。

答案 1 :(得分:0)

也许base64编码,并在帖子中使用,不会让访问者害怕这个URL? 阿尔森