- array_intersect関数を使用する方法: array_intersect関数は、複数の配列を比較し、共通の要素を返す関数です。
$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];
$array3 = [5, 6, 7, 8, 9];
$commonElements = array_intersect($array1, $array2, $array3);
print_r($commonElements);
上記のコードでは、$array1、$array2、$array3の3つの配列を比較し、共通の要素を表示します。出力結果は次のようになります。
Array
(
[2] => 3
[3] => 4
[4] => 5
)
- array_intersect_assoc関数を使用する方法: array_intersect_assoc関数は、連想配列においてキーと値の両方が一致する場合にのみ共通の要素として扱います。
$array1 = ['a' => 1, 'b' => 2, 'c' => 3];
$array2 = ['a' => 1, 'b' => 5, 'c' => 3];
$array3 = ['a' => 1, 'b' => 2, 'c' => 3];
$commonElements = array_intersect_assoc($array1, $array2, $array3);
print_r($commonElements);
上記のコードでは、キーと値の両方が一致する要素を共通の要素として表示します。出力結果は次のようになります。
Array
(
[a] => 1
[c] => 3
)
- 配列の要素をループして比較する方法: この方法では、1つの配列を基準にして他の配列の要素と比較し、共通の要素を見つけます。
$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];
$array3 = [5, 6, 7, 8, 9];
$commonElements = [];
foreach ($array1 as $element) {
if (in_array($element, $array2) && in_array($element, $array3)) {
$commonElements[] = $element;
}
}
print_r($commonElements);
上記のコードでは、$array1の要素をループして、$array2と$array3の両方に含まれる要素を共通の要素として表示します。出力結果は次のようになります。
Array
(
[0] => 5
)
これらはPHPで配列の共通要素を見つけるための一般的な方法とコード例です。他にも様々な方法がありますので、状況や要件に応じて最適な方法を選択してください。