我有一个只包含布尔值的数组:
$l = array(0=>true,2=>false,3=>true,4=>true,5=>true);
我想实现这个伪代码:
If at least one element of $l is false:
echo 'Can not do this';
else:
echo 'Can do this';
答案 0 :(得分:5)
$missing_permission = array_search(false, $l);
if($missing_permission !== false) {
echo 'No way!';
} else {
echo 'OK!';
}
答案 1 :(得分:4)
你可以简单地使用php的in_array函数,它检查数组中的给定值。
$l = array(0=> true, 2 => false, 3 => true, 4 => true, 5 => true);
if (in_array(FALSE, $l)) {
echo "can not do this";
} else {
echo "can do this";
}
答案 2 :(得分:1)
您可能会尝试使用array_reduce函数。像这样:虚假元素。
array_reduce($data, function($v, $w){ if ($w == false) { $v++; } return $v; return 1; } , 0);
回调函数计算数组中错误元素的数量。 但是我使用array_search或in_array之前的变量更好。尽量不要使用标准php函数的php循环,因为它使用本机c代码要快得多。
答案 3 :(得分:0)
循环遍历数组。如果遇到虚假元素,请停止并打印“无法执行此操作”。如果您遇到阵列的末尾,请停止并打印“可以执行此操作”。
答案 4 :(得分:0)