array_diff_assoc
Вычислить расхождение в массивах с дополнительной проверкой индекса
&reftitle.description;
arrayarray_diff_assoc
arrayarray1
arrayarray2
array...
Сравнивает array1 и array2
и возвращает разницу. В отличие от array_diff,
ключи также участвуют в сравнении.
&reftitle.parameters;
array1
Исходный массив
array2
Массив, с которым идет сравнение
...
Дополнительные массивы, с которыми осуществляется сравнение
&reftitle.returnvalues;
Возвращает array, содержащие все значения из массива
array1, которых нет в любом из последующих массивов.
&reftitle.examples;
Пример использования array_diff_assoc
В вышеприведённом примере вы видите, что пара "a" => "green"
содержится в обоих массивах и поэтому её не содержится в выводе функции.
Наоборот, пара 0 => "red" содержится в выводе функции,
потому что во втором аргументе значению "red"
соответствует ключ 1.
"green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>
]]>
&example.outputs;
brown
[c] => blue
[0] => red
)
]]>
Пример array_diff_assoc
Два значения пар key => value
считаются равными только тогда, если (string) $elem1 === (string)
$elem2 . Другими словами, применяется строгая проверка, означающая
что строковые представления должны быть одинаковыми.
]]>
&example.outputs;
0
[1] => 1
)
]]>
&reftitle.notes;
Эта функция обрабатывает только одно измерение n-размерного массива.
Естественно, вы можете обрабатывать и более глубокие уровни вложенности,
например, используя array_diff_assoc($array1[0], $array2[0]);.
&reftitle.seealso;
array_diff
array_intersect
array_intersect_assoc