array_intersect_key() は、他の全ての引数に存在する array1 の値を全て有する配列を返します。
この例では、両方の配列に存在するキーが 'blue' と 'green' だけであり、それが返されていることが わかります。また、ふたつの配列の間で 'blue' と 'green' に対応する値が違うことにも注意しましょう。 それでも一致していると判定されるのは、ただキーだけがチェックされているからです。 返される値は array1 のものです。
二つの要素は、 (string) $elem1 === (string) $elem2 の場合のみ等しいとみなされます。言い換えると、 文字列表現が同じ場合となります。
array_diff()、 array_udiff()、 array_diff_assoc()、 array_diff_uassoc()、 array_udiff_assoc()、 array_udiff_uassoc()、 array_diff_key()、 array_diff_ukey()、 array_intersect()、 array_intersect_assoc()、 array_intersect_uassoc() および array_intersect_ukey() も参照ください。