我有一小段示例代码可以提取页面的 URI。此页面在 Linux/Apache 安装上运行:
$url = "";
if (!isset($_SERVER['REQUEST_URI'])) {
echo "request_uri is not set";
$url = "value could not be set, !isset on REQUEST_URI was true";
} else {
$url = $_SERVER['REQUEST_URI'];
}
echo "url = $url <br />";
当我在浏览器中拉出此页面时,代码似乎已达到“else”条件,并且我得到了正确的 URI。
但是,当我使用“php filename.php”直接从命令行运行此代码时,代码似乎遇到了 if 条件,其中 REQUEST_URI 未设置。如果我删除“if”条件,我会收到错误“PHP Notice: Undefined index REQUEST_URI in...”
这让我有点疯狂!REQUEST_URI 有问题吗?为什么它会在浏览器和命令行之间返回不同的答案?我在哪里可以在服务器上查看此值是否实际设置并可以返回?
感谢您的任何帮助,您可以提供。