【发布时间】:2014-09-22 00:25:29
【问题描述】:
如果我在Chrome的网址栏中输入网址http://localhost/script.php?a=",其中script.php为如下测试代码:
var_dump( $_GET );
print '<br>';
var_dump( urldecode($_GET['a']) );
die();
结果看起来像
array(1) { ["a"]=> string(2) "\"" }
string(2) "\""
Chrome(或 Apache/PHP?)似乎在引号前添加了反斜杠。如果我在 URL 中使用 %22 而不是引号字符,也会发生同样的事情。不应该这样吧?
我不记得以前有过这个问题,但这是 PHP 和 Apache 的一个相当“新”的(对我而言)安装,那么可能是我的安装中的一些配置导致了这个问题吗?
【问题讨论】:
-
听起来你有magic quotes,应该升级到新版本的PHP。
标签: php apache url url-encoding stripslashes