ページのイメージ
WEB開発 2021/04/28

array_intersectの使い方|配列の共通項を抜き出す

  •  
  • このエントリーをはてなブックマークに追加

こんにちは、ITソリューション課の城所です。

 

今回はarray_intersect関数の使い方をご紹介します。

 

あまり馴染みのない関数かと思いますが、この関数では「配列の共通項を抜き出す」といったことが可能です。

 

例えば、

$fav_color1 = ['赤', '青', '白', '黒'];

$fav_color2 = ['紫', '白', '黒', '茶'];

$fav_color3 = ['白', '赤', '青', '黒'];

 

こんなかんじの配列があったとして、その全てに共通する「白」、「黒」を抜き出すといったことを、このarray_interect関数ではできます。

 

 

たまたま使う機会があり便利だったので、今回はこの関数の使い方を紹介します。

 

array_intersectの使い方

array_intersect関数の使い方は非常にシンプルで、共通項を抜き出したい配列を引数にカンマ区切りで指定するだけでOKです。

 

例えば、

$fav_color1 = ['赤', '青', '白', '黒']

$fav_color2 = ['紫', '白', '黒', '茶']

$fav_color3 = ['白', '赤', '青', '黒'] 

のような配列があったとします。

 

この中から共通の項目を抜き出すには、

$common_fav_color = array_intersect($fav_color1, $fav_color2, $fav_color3)

とします。

 

すると共通項が抜き出されて、["白","黒"]という値が$common_fav_colorに入ります。

 

スプレッド演算子

場合によっては、「配列の数が固定ではない」ということもあるかと思います。

 

その場合には「スプレッド演算子」というものが便利です。

 

まず配列を1つの変数に入れます。

$fav_color[1] = ['赤', '青', '白', '黒']

$fav_color[2] = ['紫', '白', '黒', '茶']

$fav_color[3] = ['白', '赤', '青', '黒']

  

これができたら、array_intersect関数の引数の部分に以下のように入力します。

$common_fav_color =  array_intersect(...$fav_color)

 

ここで使われている...がスプレッド演算子になります。

 

このようにすると、配列の引数の指定は1つだけで済むようになるので、配列の数が固定でない時には非常に便利です。

 

まとめ

今回はarray_intersectの使い方を紹介してみました。

 

スプレッド演算子も意外と使えそうなので、ぜひ使ってみてください!

 


しずおかオンライン中途採用社員も、積極募集中!
「womo」「イエタテ」のスタッフとして、地域の魅力を伝える仕事です。
くわしくはこちら!

Category

Ranking