PHPのarray_diffメソッドの使い方を現役エンジニアが解説【初心者向け】

初心者向けにPHPのarray_diffメソッドの使い方について解説しています。この関数は配列同士を比べ、比較対象の配列のなかに、ベースとなる配列にはない値がある場合、その値を差分として取得することのできる関数です。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

今回はPHPのarray_diffメソッドの使い方について解説します。

 

なお本記事は、TechAcademyのPHP/Laravel講座の内容をもとに紹介しています。

 

田島悠介

今回は、PHPに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PHPのarray_diffメソッドの使い方について詳しく説明していくね!

大石ゆかり

お願いします!

 

array_diffとは

array_diffとは、PHPの関数のひとつで、配列同士を比べ、比較対象の配列のなかに、ベースとなる配列にはない値がある場合、その値を差分として取得することのできる関数です。

array_diffの使い方

array_diff ( array $array1 , array $array2 [, array $... ] )

第一引数にかかれている関数を、そのほかの関数と比べて差分を抽出します。

[PR] PHPのプログラミングで挫折しない学習方法を動画で公開中

実際に書いてみよう

array_diffを使って実際に関数の差分を抽出してみます。

<?php
 $array1 = [1 => "one", 2 => "two", 3 => "three", 4 => "four"];
 $array2 = [4 => "four", 5 => "five", 6 => "six"];
 $array = array_diff($array1,$array2);
 print_r($array);
?>

$array1にと$array2で、fourという値が重複しています。ではこちらの実行結果はどうなるのか見てみましょう。

Array
(
 [1] => one
 [2] => two
 [3] => three
)

fourが重複していたので、$array1に入っていたそれ以外の値が結果として表示されました。

先程の配列では、キーも全く同じものが重複していたのですが、キーが違う場合はどうなるのでしょうか。

<?php
 $array1 = [1 => "one", 2 => "two", 3 => "three", 4 => "four"];
 $array2 = [5 => "five", 6 => "six", 7 => "four"];
 $array = array_diff($array1,$array2);
 print_r($array);
?>

こちらの実行結果は以下になります。

Array
(
 [1] => one
 [2] => two
 [3] => three
)

キーが違っていても値が同じであればしっかり抽出されます。配列の差分を見つけたいときにはぜひarray_diff関数を使ってみてくださいね。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

オンラインのプログラミングスクールTechAcademyではオンラインブートキャンプPHP/Laravelコースを提供しています。

PHPやフレームワークのLaravelを使ってWebアプリケーションの開発を学ぶことができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。