编程语言
首页 > 编程语言> > php – 使用if(!empty),多个变量不在数组中

php – 使用if(!empty),多个变量不在数组中

作者:互联网

我试图用PHP中的if(!empty)函数来修饰一些代码,但我不知道如何将它应用于多个变量,当它们不是一个数组时(就像我之前必须做的那样)所以如果我有:

$vFoo       = $item[1]; 
$vSomeValue = $item[2]; 
$vAnother   = $item[3];

然后我想只在有值时才打印结果.这适用于一个变量,所以你有:

 if (!empty($vFoo)) {
     $result .= "<li>$vFoo</li>";
 }

我尝试了一些类似的东西

if(!empty($vFoo,$vSomeValue,$vAnother) {
    $result .= "<li>$vFoo</li>"
    $result .= "<li>$vSomeValue</li>"
    $result .= "<li>$vAnother</li>"
}

但是,当然,它不起作用.

解决方法:

你可以创建一个新的包装器函数,它接受多个参数并通过empty()传递每个参数.它的工作方式类似于isset(),仅当所有参数都为空时返回true,并在到达第一个非空参数时返回false.这是我想出来的,它在我的测试中起作用.

function mempty()
{
    foreach(func_get_args() as $arg)
        if(empty($arg))
            continue;
        else
            return false;
    return true;
}

旁注:“mempty”中的前导“m”代表“多重”.您可以随意调用它,但这似乎是最短/最简单的命名方式.除此之外……说起来很有趣.

标签:php,is-empty
来源: https://codeday.me/bug/20190928/1827850.html