写一个简短的方法if(!is_null($ foo)&&!is_null($ bar))?

时间:2016-06-02 13:45:27

标签: php

所以,我正在编写一个接收两个参数的函数,在我对这些变量做任何事情之前,我想检查它们是否为空。

build.sbt

问题在于我认为我们正在重复代码,并且在某些情况下,当变量名称稍大时,每次写入都会变得很痛苦。

那么,有一种方法可以缩短这段代码吗?

3 个答案:

答案 0 :(得分:4)

如果变量为null,则可以使用isset返回FALSE。您可以设置很多变量,因此代码会更短:

if (isset($foo, $bar))

答案 1 :(得分:3)

您可以编写自己的函数来检查:

function is_any_null() {
    $params = func_get_args();
    foreach($params as $param) {
        if (is_null($param))
            return true;
    }

    return false;
}

现在您可以像这样使用它:

if (!is_any_null($foo, $bar)) {
    /* do something */
}

答案 2 :(得分:0)

is_null()检查变量以确定值是否为NULL。它可以在if statement中使用。这取决于您在if statement中想要做什么。例如,如果你想做一个echo,你可以使用`elvis``operator来缩短它:

echo (is_null($foo) && is_null($bar)) ?: 'The values are not null';

或者您可以将{}从代码中删除,并将所有内容放在一行上,从而使其成为一个单行。

if (!is_null($foo) && !is_null($bar)) die("NULLLLL");