2013-10-17 4 views
1

이있는 경우 나 배열이 여러 배열의 키를 확인 : 나는 모든 키 값이 아닌지 한 Statment 확인하는 경우를 실행하려면PHP는 키 값

$my_array = array(1 => 'has value', 2 =>'', 3 => ''); 

을 값이없는 경우 모든 키에 대해 다음 false를 돌려

같은 :

if(any_key_has_value($my_array)){ 
    //run my query 
} 

답변

3

당신이 값,321 "로"값을 갖고 "정의하는 경우 0 "

if (count(array_filter($array)) == count($array)) { 
    echo 'All elements have values'; 
} 
+0

확인 => ' localhost ','user '=> 참,'password '=> 참,'database '=> 참); 그리고 진실 해지자 : P –

1
function hasValue($v) { 
    return strval($v) != ''; 
}  
$res_array = array_filter($my_array, 'hasValue'); 
// any key has value 
$any_key_has_value = 0 < sizeof($res_array); 
// all keys have values 
$all_keys_have_values = sizeof($my_array) == sizeof($res_array); 
1
$my_array = array(1 => 'has value', 2 =>'', 3 => ''); 

단순히이

if (array_filter($my_array)) { 
    // here first value `has value` 
}else{ 
// all values are empty 
} 
+0

는'count ($ array_filter)'가 필요하다. 그렇지 않으면 작동하지 않을 것이다. 감사하다. – user007

1

이 시도하려고 :

<?php 
     $array = array('key1' => null, 'key2' => null, 'key3' => null, 'key4' => null); 

     if (!array_filter($array)) { 

      echo "All keys have null values"; 
     } 
     else 
     { 
       // do something 
     } 
     ?> 

- $로 설정 = 배열 ​​('호스트'