找不到执行此操作的方法,但我正在寻找一种方法来检查数组中的所有值是否都是 INT,如果不是,它应该返回 false。
请注意,我无法清理该值!
// the idea
$good = array(1,2,3,4);
$bad = array(1,2,'no',4);
if($good){
echo 'works';
}else{
echo 'failed';
}
array_reduce($arr, function ($result, $item) { return $result && is_int($item); }, true)
如果你有一些函数式编程原语,你可以做:
if (every($arr, 'is_int')) ..
这是一个你可以使用的可重用函数,如果数组的任何元素不是 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;
}
$bad = array(1,2,'no',4);
foreach($bad as $value){
if( ! is_int($value)){
echo 'bad';
}
}