我$_SERVER['QUERY_STRING']
在我的 PHP 脚本中使用。我的查询字符串?e+e
工作正常,但?e|e
没有。
我的 PHP 脚本很简单:
<?php
echo $_SERVER['QUERY_STRING'];
?>
为什么不起作用|
?|
如果我不使用 use ,我似乎可以使用$_SERVER['QUERY_STRING']
。
我$_SERVER['QUERY_STRING']
在我的 PHP 脚本中使用。我的查询字符串?e+e
工作正常,但?e|e
没有。
我的 PHP 脚本很简单:
<?php
echo $_SERVER['QUERY_STRING'];
?>
为什么不起作用|
?|
如果我不使用 use ,我似乎可以使用$_SERVER['QUERY_STRING']
。
如果您在浏览器中手动添加管道符号,则可能会发生这种情况
尝试这样做:?e%7Ce
您需要将|
符号编码为%7C
. 那么它将起作用。$_SERVER['QUERY_STRING']
会自动解码。
这不是正确的 QUERY_STRING 原因“|” 是不允许的符号。RFC 2396 2.3。
Data must be escaped if it does not have a representation using an
unreserved character; this includes data that does not correspond to
a printable character of the US-ASCII coded character set, or that
corresponds to any US-ASCII character that is disallowed, as
explained below.