如何检查isset是否未设置?

How to check if isset is not set?

我正在使用这行代码来检查是否未设置 isset。

例如:

if(!isset($_REQUEST['search']))
{ }
else if(!isset($_REQUEST['submit']))
{}

我只想知道 !isset 是否是有效代码。如果不是,正确的方法是什么?谢谢

正在检查变量是否已设置

为了使其工作,您将一个变量作为唯一参数传递给 isset(),它会 return true 或 false 取决于是否设置了变量。例如:

<?php
    $foo = 1;
    if (isset($foo)) {
        echo "Foo is set\n";
    } else {
        echo "Foo is not set\n";
    }
    if (isset($bar)) {
        echo "Bar is set\n";
    } else {
        echo "Bar is not set\n";
    }
?>

这将输出 "Foo is set" 和 "Bar is not set"。通常,如果您尝试访问未设置的变量,如上面的 $bar,PHP 将发出警告,提示您正在尝试使用未知变量。 isset() 不会发生这种情况,这使其成为一个安全的函数。

使用 !isset 没问题,但是 else ifif 在您的代码中完全错误

方法将是:-

if(isset($_REQUEST['search'])){  // check that variable is set and have some value or not
    // variable is set and have value
}else {
   // variable is either not set or not have  value
}

此处您正在从 post 方法发送用户名。

 <?php
    if(isset($_POST['userName']))
    {
    //your code 
    header("location: dashoard.php");
    }
    else{
    // your code
    header("location: index.php");
    }
    ?>