我有一个可以包含任意数量值的数组,其中一些可能会重复出现。
示例:1,2,2,5,7,3
如何在PHP中编写测试,检查数组中包含的唯一值是1还是2?
所以1,2,2,1,1,1会返回true。
同时1,2,3,1,2,1将返回false。
答案 0 :(得分:5)
这似乎工作正常:
function checkArray($a)
{
return (bool)!count(array_diff($a, array(1,2)));
}
如果它只是1s和2s则返回true,否则返回false
答案 1 :(得分:0)
function return_1_or_2($array){
foreach($array as $a){
$c = $a-1;
if($c>1){
$flag = true;
break;
}
}
if($flag){
return false;
}else{
return true;
}
}
请试一试......你可以进一步优化这个......但这只是一个例子...
答案 2 :(得分:0)
function array_contains_ones_and_twos_only( &$array ){
foreach ($array as $x)
if ($x !== 1 && $x !== 2)
return false;
return true;
}
答案 3 :(得分:0)
function checkarray($array) {
foreach($array as $a) {
if ($a != 1 && $a != 2)
return false;
}
return true;
}