检查数组中的所有值是否为int

时间:2015-03-12 12:46:57

标签: php arrays

找不到办法做到这一点,但我正在寻找一种方法来检查数组中的所有值是否为INT,否则它应该返回false。

请注意,我无法消化价值!

// the idea
$good = array(1,2,3,4);

$bad  = array(1,2,'no',4);

if($good){

   echo 'works';

}else{

   echo 'failed';

}

3 个答案:

答案 0 :(得分:1)

array_reduce($arr, function ($result, $item) { return $result && is_int($item); }, true)

如果你有一些functional programming primitives,你可以这样做:

if (every($arr, 'is_int')) ..

答案 1 :(得分:0)

$bad  = array(1,2,'no',4);

foreach($bad as $value){
    if( ! is_int($value)){
        echo 'bad';
    }
}

答案 2 :(得分:0)

这是一个可以使用的可重用函数,如果数组的任何元素不是int,它将返回false。

$bad  = array(1,2,'no',4);

CheckArray($bad);




function checkArray($array){

foreach($array as $value){
 if( ! is_int($value)){
    return false;
  }
 }
return true;
}