PHP - "更多零"如果条件

时间:2016-05-30 13:18:16

标签: php coding-style code-standards

通常在php中我会看到像

这样的代码行
if(count($arr)) // $arr not empty

if(!$var) // $var is 0

但对我而言,更具信息性的是像

这样的风格
if(count($arr) > 0) // or if(!empty($arr))

if($var == 0)

哪个做同样的检查。什么选项更正确? 这不是问题,只是代码式问题。对于像这样的条件,可能存在一些标准(如PSR-2)。

1 个答案:

答案 0 :(得分:0)

第一个声明用于计算count()。例如,这可以是数组值。

<?php
$array = array("x", "x", "x");
# Output: 3
echo count($array);
?>

第二个语句用于检查变量$var是否为真。如果$ var不为真,您可以将此行翻译为,然后..

<?php
$array = array("x", "x", "x");
if(!$array) {
    echo "True";

}else{

    echo "Does nothing..";
}
?>

第三个陈述用于检查$var的计数是否大于零。

<?php
# Output: "Is not empty!"
$array = array("x", "x", "x");
if(count($array) > 0)
    echo "Is not empty!";

}else{

    echo "Empty..";
}
?>

最后一个用于检查$var是否等于零。

<?php
# Output: "Does nothing.."
$array = array("x", "x", "x");
if($array == 0) {
    echo "Is not empty!";

}else{

    echo "Does nothing..";
}
?>

基本上所有这四个陈述都有不同的含义。作为对你的问题的回答,if(count($arr) > 0)是检查数组是否有多于零条目的最佳解决方案。