人気のオープン ソース プログラミング言語として、PHP は一連の問題を効率的に処理できます。その 1 つは配列の処理です。配列を処理する場合、PHP は多くの強力な関数も提供します。この記事では主に、配列内の同じ要素を見つける方法について説明します。
同じ要素を見つける方法
PHP では、配列内の同じ要素を見つけるためのさまざまな方法があります。次に、基本的な方法のいくつかを紹介します:
方法 1: array_count_values 関数を使用する
array_count_values 関数を使用すると、配列内の各要素の出現数を簡単に見つけることができ、出現数が 1 より大きい要素をフィルターするだけで済みます。サンプル コードは次のとおりです。
$arr = array(1,2,3,4,5,3,2,1,2,5,5); $counts = array_count_values($arr); foreach($counts as $key=>$value){ if($value > 1){ echo "元素".$key."出现了".$value."次"."<br/>"; } }
方法 2: array_unique 関数と array_diff 関数を使用する
array_unique 関数は重複要素を削除した後に配列を返すことができ、array_diff 関数は要素間の差分を返すことができます。 2 つの配列。これら 2 つの関数を組み合わせることで、元の配列内の同じ要素を見つけることができます。サンプル コードは次のとおりです。
$arr = array(1,2,3,4,5,3,2,1,2,5,5); $unique_arr = array_unique($arr); $diff_arr = array_diff_assoc($arr,$unique_arr); foreach($diff_arr as $value){ echo "元素".$value."是相同的"."<br/>"; }
方法 3: array_intersect 関数を使用する
array_intersect 関数は 2 つの配列の交差部分を返し、array_unique 関数を使用して重複を削除して取得します。同じ要素。サンプル コードは次のとおりです。
$arr1 = array(1,2,3,4,5); $arr2 = array(3,4,5,6,7); $intersect_arr = array_intersect($arr1,$arr2); $unique_arr = array_unique($intersect_arr); foreach($unique_arr as $value){ echo "元素".$value."是相同的"."<br/>"; }
方法 4: 配列を走査する
最も単純で最も原始的な方法は、ループを通じて配列を直接走査して同じ要素を見つけることです。サンプルコードは以下のとおりです:
$arr = array(1,2,3,4,5,3,2,1,2,5,5); for($i=0;$i<count($arr);$i++){ for($j=$i+1;$j<count($arr);$j++){ if($arr[$i] == $arr[$j]){ echo "元素".$arr[$i]."和元素".$arr[$j]."是相同的"."<br/>"; } } }
上記は一般的な 4 つのメソッドですが、実際には配列操作には多くのメソッドがあり、効率的で簡潔なメソッドが数多くあります。
考え方と注意点
同じ要素を見つける問題には、一定の考え方と注意点が必要です。
概要
配列内の同じ要素を処理することは、PHP では非常に一般的な操作です。この問題はいくつかの方法で解決できます。解決方法を選択するときは、実際のニーズとアレイ サイズに基づいて最適な方法を選択する必要があります。さらに、配列を操作するためのテクニックやメソッドは数多くあり、それらは継続的に練習し、実際のプログラミングで要約する必要があります。
以上がPHP配列で同じ値を見つけるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。