点击次数%40变为%2540

时间:2014-08-19 21:25:12

标签: php yii

当点击包含@符号的链接时,网址会给我%40,这就是我想要的。但是一旦我点击它,一秒后它会在我点击后立即更改为%2540。点击是在电子邮件中,然后定向到网站,其中%40更改为%2540。我怎样才能让它停止变化?

它现在正在获得这样的参数:

$email=Yii::app()->request->getParam('email');

不确定我应该提供哪些其他信息。

3 个答案:

答案 0 :(得分:14)

问题是,您的%40再次进行了网址编码(因为%编码为%25),这会为您提供%2540

答案 1 :(得分:1)

在你的问题中没有足够的细节来确定原因,但我至少可以告诉你它是什么,这应该给你一些线索。

A" @"有一个十六进制40的ASCII码,所以当它被转义(即变成没有任何特殊字符的东西)时,它变成"%40"。但是"%"具有十六进制25的ASCII码。如果你逃避"%",你得到"%25"。

您的文字被转发两次:首先来自" @"至"%40",然后再次从"%40"到"%2540"。

答案 2 :(得分:1)

当您尝试在查询字符串上调用urlencode时,就会发生这种情况。所以,第一个电话会给你%40而不是“@”。而第二个电话会给你%25而不是%