php - 什么时候 REQUEST_URI 可以为空?

标签 php

我在为我的 PHP 网站创建路由器时遇到了这样一个方法:

public function getURI() {
   if (!empty($_SERVER["REQUEST_URI"])) {
      // do some stuff and return the result
   }
}

我发现即使我请求 'example.com' - $_SERVER["REQUEST_URI"] 也不为空(它是 '/')

问题是:

为什么我需要检查$_SERVER["REQUEST_URI"]是否为空?

什么时候 REQUEST_URI 可以为空?

最佳答案

在 HTTP 调用中,$_SERVER["REQUEST_URI"] 永远不会为空,因为它是 HTTP 协议(protocol)的一部分。

如果在 CLI 中调用此函数,$_SERVER["REQUEST_URI"] 可能为空。

编辑

或者,正如@ArtisticPhoenix 所指出的,它可以由用户 unset($_SERVER["REQUEST_URI"]);$_SERVER["REQUEST_URI"]="foo ";

关于php - 什么时候 REQUEST_URI 可以为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48579283/

相关文章:

java - 有没有办法在 iphone 上阅读编程语言?

php - fgetcsv 与 MySQL : weird error

php - 浏览器选项卡关闭时销毁 session

php - 找不到我的SQL语法错误

php - 在 PHP 中向字符串添加通配符

php - 在 HTML5 中显示之前加载内容

javascript - 将动态输入索引到其他动态输入数组

php - 在 php 中创建一个包含其他语言字符的文件

php - 如何配置 Zend_Form 以使用数组表示法?

php数据库注册并接受