配列の差を計算する

# array_diff

(PHP 4 >= 4.0.1, PHP 5, PHP 7)

array_diff — 配列の差を計算する

### 説明

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

`array1` を他の配列と比較し、 `array1` の要素の中で他の配列には存在しないものだけを返します。

### パラメータ

`array1`

  比較元の配列。

`array2`

  比較対象の配列。

`...`

  さらに比較したい配列。

### 返り値

`array1` のエントリのうち、他のどの配列にも含まれない要素のみを含む配列を返します。

### 例

例1 array_diff() の例

`<?php
$array1 = array("a" => "green", "red", "blue", "red");
$array2 = array("b" => "green", "yellow", "red");
$result = array_diff($array1, $array2);
print_r($result);
?>`

$array1 に複数存在する場合でも全て同様に処理されます。 この出力は次の通りです。

    Array
    (
        [1] => blue
    )

### 注意

> 注意:

> 二つの要素は、(string) $elem1 === (string) $elem2 の場合のみ等しいと見直されます。言い換えると、文字列表現が同じ場合となります。

> 注意:

> この関数は n 次元配列の一つの次元しかチェックしません。 もちろん、array_diff($array1[0], $array2[0]); のようにすることでより深い次元でのチェックもできます。

### 参考

- array_diff_assoc() - 追加された添字の確認を含めて配列の差を計算する
- array_intersect() - 配列の共通項を計算する
- array_intersect_assoc() - 追加された添字の確認も含めて配列の共通項を確認する