我试图了解这之间的区别:
if (isset($_POST['Submit'])) {
//do something
}
和
if ($_POST['Submit']) {
//do something
}
在我看来,如果 $_POST['Submit'] 变量为真,那么它就被设置了。在这种情况下,为什么我需要 isset() 函数?
我试图了解这之间的区别:
if (isset($_POST['Submit'])) {
//do something
}
和
if ($_POST['Submit']) {
//do something
}
在我看来,如果 $_POST['Submit'] 变量为真,那么它就被设置了。在这种情况下,为什么我需要 isset() 函数?
因为
$a = array("x" => "0");
if ($a["x"])
echo "This branch is not executed";
if (isset($a["x"]))
echo "But this will";
(另见http://hk.php.net/manual/en/function.isset.php和http://hk.php.net/manual/en/language.types.boolean.php#language.types.boolean .铸造)
如果 isset 存在且不为 NULL,则返回 TRUE,否则为 FALSE。
您基本上想检查 $_POST[] 变量是否已提交,无论其值如何。如果你不使用isset(),某些提交submit=0
会失败。
在您的第二个示例中,E_NOTICE
如果该键未设置为$_POST
.
编码
if($_POST['Submit'])
{
//some code
}
不能在 WAMP 上工作(在 xampp 上工作)
你必须使用
if (isset($_POST['Submit'])) {
//do something
}
尝试一下。:)
如果用户没有输入值,那么 $_post[] 返回 NULL,我们在 isset 的描述中说:“
如果 isset 存在并且不为 NULL,则返回 TRUE,否则为 FALSE。,但在这里 isset 返回 true"