是否有更好/更短的方式来执行以下操作:
$stock_array = array("soccer" => "0");
if (count($stock_array) == 1 && in_array('0', $stock_array)) {...}
我想检查数组是否有1个元素,值是0。
提前致谢
答案 0 :(得分:1)
根据您的标题,这将提供计数是否为1且其值为0
$count = array_count_values($stock_array);
if ($count == array('0' => 1)) {
//something
}
或者如果您正在寻找一种预功能的答案,您也可以将array_filter()
与empty()
一起使用:如果数组中的所有值都为空或{{1},则返回True }}
0
答案 1 :(得分:0)
是的,您可以尝试使用以下代码。
if (array_search('0', array_values($stock_array)) == 0) {...}
但这并不能说明数组是否只有这个元素。
从您的问题中,我可以理解您正在尝试:
1
。我提供的解决方案,检查这是否是数组的第一个值。但要检查数组的长度,你还需要另外一个。