array_intersect_assoc 追加された添字の確認も含めて配列の共通項を確認する &reftitle.description; arrayarray_intersect_assoc arrayarray arrayarrays array_intersect_assoc は、全ての引数に現れる array の全ての値を含む配列を返します。 array_intersect と異なり、 キーも比較に使用されることに注意してください。 &reftitle.parameters; array 値を調べるもととなる配列。 arrays 値を比較する対象となる配列。 &reftitle.returnvalues; array の値のうち、すべての引数に存在するものを含む連想配列を返します。 &reftitle.changelog; &Version; &Description; &array.changelog.require-only-one; &reftitle.examples; <function>array_intersect_assoc</function> の例 "green", "b" => "brown", "c" => "blue", "red"); $array2 = array("a" => "green", "b" => "yellow", "blue", "red"); $result_array = array_intersect_assoc($array1, $array2); print_r($result_array); ?> ]]> &example.outputs; green ) ]]> 上の例で、"a" => "green" の組のみが両方の配列に現れており、 よって配列として返されていることがわかります。 値 "red" は返されません。これは、 $array1 においてはそのキーが 0 であり、一方、$array2 においてはキーが 1 であるためです。 また、キー "b" は返されません。 これは、その値がそれぞれの配列で異なるためです。 key => value の組からの二つの値は、 (string) $elem1 === (string) $elem2 が成り立つ場合にのみ等しいと見なされます。 言い替えると、厳密なチェックが行われるため、 文字列表現が同じである必要があります。 &reftitle.seealso; array_intersect array_uintersect_assoc array_intersect_uassoc array_uintersect_uassoc array_diff array_diff_assoc