php $ _SERVER ['REQUEST_URI']编码问题?

时间:2009-10-21 13:22:46

标签: php encoding

当我输出$_SERVER['REQUEST_URI'];时:

http://localhost/tools/?tool=cs&sub=1

我明白了:

/tools/?tool=cs⊂=1

除了使用/tools/?tool=cs&sub=1而不是&之外,还有其他解决方案来获取&吗?

3 个答案:

答案 0 :(得分:4)

这是因为您将它回显到浏览器 - &sub被解释为HTML实体(⊂)。

如果你echo htmlentities($_SERVER['REQUEST_URI']);,你会得到你期望的。

您必须对您所处的环境使用正确的编码 - 在HTML中意味着使用&

答案 1 :(得分:1)

试试这个

echo urldecode($_SERVER['REQUEST_URI']);

答案 2 :(得分:0)

你是如何输出这个值的?如果您将其转储到浏览器中,您确定它不会尝试“解码”嵌入式&符号吗?

尝试使用

的文件
<?php phpinfo();

并查看显示的值(靠近底部)

相关问题