0 レビュー
3 回答
PHPは配列値が一意かどうかをチェックします
私は今日、何かに取り組んでいましたが、この問題に遭遇しました。特定の配列値がその配列内で一意であるかどうかをどのように確認しますか?
$array = array(1, 2, 3, 3, 4, 5);
if(unique_in_array($array, 1)) //true
if(unique_in_array($array, 3)) //false
array_search()または in_array()の使用を検討してきましたが、どちらも重複を見つけるのに非常に役立ちます。私はそれを行うためにこのような関数を書くことができると確信しています:
function unique_in_array($arr, $search){
$found = 0;
foreach($arr as $val){
if($search == $val){
$found++;
}
}
if($found > 1){
return true;
} else {
return false;
}
}
または別の解決策は、次のように array_count_values()を使用することでした:
$array_val_count = array_count_values($array);
if($array_val_count[$search] > 1){
return true;
} else {
return false;
}
しかし、PHPにこれを行うための組み込み関数(または少なくともより良い方法)がないのは奇妙に思えますか?
わからない
0
レビュー
答え :
解決策:
これを試してください:
if (1 === count(array_keys($values, $value))) {
// $value is unique in array
}
参考のために、以下を参照してください:
わからない
0
レビュー
答え :
解決策:
このように試すことができます-
の関数リファレンスです。$array1 = array(1, 2, 3, 3, 4, 3, 3, 5); $func = array_count_values($array1); $count = $func[3]; #Pass value here echo $count; #this will echo 4 #If you pass undefined value, You should use like as below $count = isset($func[8])? $func[8] : 0; echo $count; #this will echo 0, Because 8 is absent in $array1
わからない
0
レビュー
答え :
解決策:
配列に重複する値があるかどうかを確認するためにこれを見つけました
$array = array(1, 2, 3, 3, 4, 5);
if(count(array_unique($array)) != count($array)){
// Return true Array is unique
}
else{
// Return false Array is not unique
}
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。