检查多个null isset值

时间:2017-12-27 15:17:23

标签: php isset

我正在检查两个值是否为null。如果两者都是null我想返回false,如果其中一个或两个都 null,我想返回true

我的当前代码仅在两者都不是true时返回null但我希望它在true时返回null

// check if both null
   if (!isset($myarray['dataone'], $myarray['datatwo']))
       {
           echo 'false';
        );    
       } else {
           echo 'true';
        );
       }
       return $emptytabs;

4 个答案:

答案 0 :(得分:1)

为此你可以使用关系运算符。 AND(&&)OR(||)

使用AND(&&)运算符。

if ( (!isset($myarray['dataone']) || (!isset$myarray['datatwo'] ))
{
    echo 'false';  
} 
else 
{
    echo 'true';
}

使用OR(||)运算符。

if (isset($myarray['dataone'] && isset$myarray['datatwo'])
{
    echo 'false';  
} 
else 
{
    echo 'true';
}

答案 1 :(得分:0)

// check if both null
if ( !isset($myarray['dataone']) && !isset($myarray['datatwo']))  {
        echo 'false';
    } else {
        echo 'true';
    }

// check if one or both are null
if ( !isset($myarray['dataone']) || !isset($myarray['datatwo']))  {
        echo 'false';
    } else {
        echo 'true';
    }

答案 2 :(得分:0)

// check if both null

if ( !isset($myarray['dataone'], $myarray['datatwo']) )
    {
        echo 'false';

    } else {
       echo 'true';
}
return $emptytabs;

您提供的这种方法完全正确,但只有在根据php文档设置所有提供的参数时才返回true。

所以你的代码应该正常工作。除了你有不想要的括号,应该删除

答案 3 :(得分:0)

最简单的方法是使用OR(||)运算符。如果设置了一个 OR ,则要显示“true”。用代码说出来。

if ( isset($myarray['dataone']) || isset($myarray['datatwo']) ) {
    echo 'true';
} else {
    echo 'false';
}

使用AND运算符通过检查两个事物都没有设置以使其显示“false”来增加无意义的复杂性。这不是一种直观的思考方式,因此以这种方式编写代码是没有意义的。

免责声明:这个答案是固执的。