是否可以通过 Post/Get 传递 Null 值?(PHP)

fiz*_*ink 1 php get http-post

是否可以通过 Post/Get 传递 Null 值?

通过 null,我的意思是在 上返回 trueisset()但在 上返回false 的东西empty()

原因是,我想知道我是否需要额外检查$_GET我在哪里检查以下内容:

if (isset() && !empty()) {
    // do stuff
} elseif (isset() && empty()) {  // In other words, omit this one.
    // do other stuff
} else {
    //foo bar
}
Run Code Online (Sandbox Code Playgroud)

谢谢,

chr*_*etd 5

如果 GET 变量不存在(即script.php),您将获得:

  • isset($_GET['var']) = false
  • empty($_GET['var']) = true

如果它存在但没有值(即script.php?test=),您将获得:

  • isset($_GET['var']) = true
  • empty($_GET['var']) = true

因此,测试isset($_GET['var']) && !empty($_GET['var'])足以保证您的 GET 变量存在并具有正确的值。