PHP中的空值是否更有效地检查



在某些情况下,当空值不是问题时,我不检查变量。

例如:

$fruits = array("apple","banana");
    foreach ($fruits as $a) {
    $res .= ", $a";
}
echo "This are the fruits you like: ".$res;

现在,如果$果实恰好是空的,这不是问题,简单的列表将是空的(我知道这不是很优雅,我可以使用条件语句将答案更改为"您不喜欢任何水果",但这只是一个例子!)

我只是想知道一般来说,检查阵列是否为空。简而言之,从性能的角度来看,这是更好的,还是没有任何实际区别:

if (!empty($fruits)) foreach()... and so on

谢谢善意

任何性能提高都可以忽略不计。这称为微观优化。专注于编写良好的代码,不再担心微观化。

我会去做这样的事情:

if(!empty($fruit) && is_array($fruit)){
    echo "This are the fruits you like: " . implode(", ", $fruit);
}

好吧,这取决于数组的填充。例如,如果是用户输入,则可能需要确保它不是空的,否则,如果不需要,则不要。

肯定是每盘的。

另外,使用空()时要小心;如果值为0,则即使存在一个值,它也会返回true。您可以使用strlen()解决此处:)

echo is_array($array) ? implode(', ', $array) : false;

单线解决方案..

或者您可以使用,计数。

eg:count($ array)> 0 ....

您还可以使用isset(),该CC_1将检查该变量是否具有值0或其他方式。

您要检查数组$fruits是否为空,然后按照韦恩建议使用implode

  if(!empty($fruits)){
   echo "This are the fruits you like: " . implode(", ", $fruits);
 }

is_array并不是真正的必要

在这种情况下,我不会认为这会产生巨大的不同。但是,如果它是空的$ res永远不会被声明,这可能会导致错误,并且错误总是不好的。

相关内容

最新更新