2011-09-07 5 views
0

모든 값이 "true"이면이 배열을 검사하고 싶습니다."array_and"와 같은 것을 찾고있다.

$arr = array(true, true, true) // would be true 
$arr = array(true, true, false) // would be false 
$arr = array(false, true, false) // would be false 

PHP는 "array_sum()"함수를 제공합니다. "array_and()"와 같은 짧은 함수가 있습니까?

현재 다음과 같이 사용합니다.

$result = true; 
foreach ($arr as $item) { 
    $result = $result && $item; 
} 

더 짧은 솔루션이 있습니까?

+2

설명서를 살펴보십시오. 하나도 없다면 하나를 적어 라. 다음 것. –

+1

'in_array (false, $ arr, true)'가 작동하지 않습니까? – Quasdunk

답변

0

질문을 이해하면 in_array("false")을 사용할 수 있습니다.

1

배열 내용을 ANDing하는 것 같습니다. 이 경우 배열에서 false가 발생하는지 묻는 것만으로 충분합니다. 그래서 : 내가 당신을 위해 잘 작동 것이 뭔가

+0

세 번째 플래그로 STRICT 모드를 켜면 비교가 느슨합니다. –

+0

@Tomalak Geret'kal : 좋은 지적입니다. 고쳤다. – dnagirl

+0

+1 나에게서. :-) –

0
$foo = array(true, true, false); 

if(in_array(false, $foo)) { 
    echo 'false is present'; 
} 

은 하나의 옵션이 될 수 있습니다.

무엇을 원하십니까? 더러운 해킹? 글쎄,이 일을 PHP의 방법입니다.

관련 문제