找不到办法做到这一点,但我正在寻找一种方法来检查数组中的所有值是否为INT,否则它应该返回false。
请注意,我无法消化价值!
// the idea
$good = array(1,2,3,4);
$bad = array(1,2,'no',4);
if($good){
echo 'works';
}else{
echo 'failed';
}
答案 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;
}