我只包含布爾數組:PHP檢查數組?
$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';
我只包含布爾數組:PHP檢查數組?
$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';
你可以嘗試使用array_reduce功能。像這樣的東西:錯誤的元素。
array_reduce($data, function($v, $w){ if ($w == false) { $v++; } return $v; return 1; } , 0);
回調函數計數數組中的假元素數。 但我與array_search或in_array意思之前的變體是更好的。儘量不要使用php的循環,而使用標準的php函數,因爲它使用本地c代碼,所以速度要快得多。
$missing_permission = array_search(false, $l);
if($missing_permission !== false) {
echo 'No way!';
} else {
echo 'OK!';
}
循環遍歷數組。如果遇到錯誤元素,請停止並打印「無法執行此操作」。如果遇到數組的末尾,請停止並打印「可以做到這一點」。
您可以簡單地使用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";
}
它應該是_if的至少一種元素..._? in_array: – 2011-12-29 08:48:51
:http://php.net/manual/en/function.in-array.php – 2011-12-29 09:09:40