如何使用PHP和GET正确输出URL变量中的特殊字符

时间:2013-12-22 01:59:33

标签: php url get special-characters

我遇到了一个问题(一旦网络应用已启动并运行了一周!)我似乎无法解决它,而且我有点急于解决它在它继续发生故障之前修复它。

我为一个企业编写了一张整洁的小圣诞卡片,用户输入了他/她的名字和其他人的名字,然后发送,所以卡片上写着 TO:JOHN,FROM:PAUL ,基本上。

此信息通过URL vars发送,然后,当然,我使用GET检索并输出消息。

当然,这是一张可以从任何人和任何人使用的卡片......但我只用英语测试它(我的坏)。因此,当第一个Martín或Sören出现并使用该卡时,他们会得到来自:Martãn来自:Sã¶ren ......

显然,这不起作用。

所以我猜我需要找到一种方法将特殊字符从输入字段转换为URL或从URL转换为输出消息。 (虽然我们讨论的主题是:你会推荐哪一个?)

然而,我无法让它发挥作用。我已经尝试通过URL发送哪些字符代码。

我注意到网址通常会替换某些字符,尤其是带有%和其他内容的空格(一种我不知道的名称的编码方法;请问有人可以启发我吗?)。但是,当我尝试%C3%AD时,根据我发现的网站,í的代码,就像我的示例Martín一样,我继续得到ã,因为URL中的这些代码会自动更改为其特殊字符。

我也尝试了íí,但无济于事!

1 个答案:

答案 0 :(得分:2)

您可以尝试使用rawurlencode,查看那里的示例。希望这会有所帮助。

http://www.php.net/rawurlencode

http://www.php.net/manual/en/function.rawurldecode.php