Вычисляет расхождение массивов с дополнительной проверкой индекса


(PHP 4 >= 4.3.0, PHP 5)

array_diff_assocВычисляет расхождение массивов с дополнительной проверкой индекса

Описание

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

Сравнивает array1 с array2 и возвращает разницу. В отличие от array_diff(), ключи также участвуют в сравнении.

Список параметров

array1

Исходный массив

array2

Массив, с которым идет сравнение

...

Дополнительные массивы, с которыми осуществляется сравнение

Возвращаемые значения

Возвращает array, содержащие все значения из массива array1, которых нет в любом из последующих массивов.

Примеры

Пример #1 Пример использования array_diff_assoc()

В вышеприведённом примере вы видите, что пара "a" => "green" содержится в обоих массивах и поэтому её не содержится в выводе функции. Наоборот, пара 0 => "red" содержится в выводе функции, потому что во втором аргументе значению "red" соответствует ключ 1.

<?php
$array1 
= array("a" => "green""b" => "brown""c" => "blue""red");
$array2 = array("a" => "green""yellow""red");
$result array_diff_assoc($array1$array2);
print_r($result);
?>

Результат выполнения данного примера:

 Array (     [b] => brown     [c] => blue     [0] => red ) 

Пример #2 Пример использования array_diff_assoc()

Два значения пар key => value считаются равными только тогда, если (string) $elem1 === (string) $elem2 . Другими словами, применяется строгая проверка, означающая что строковые представления должны быть одинаковыми.

<?php
$array1 
= array(012);
$array2 = array("00""01""2");
$result array_diff_assoc($array1$array2);
print_r($result);
?>

Результат выполнения данного примера:

 Array (     [0] => 0     [1] => 1     ) 

Примечания

Замечание: Эта функция обрабатывает только одно измерение n-размерного массива. Естественно, вы можете обрабатывать и более глубокие уровни вложенности, например, используя array_diff_assoc($array1[0], $array2[0]);.

Замечание: Убедитесь, что передаете аргументы в правильном порядке, когда сравниваете схожие массивы с большим количеством ключей. Новый массив должен быть первым.

Смотрите также

  • array_diff() - Вычислить расхождение массивов
  • array_intersect() - Вычисляет схождение массивов
  • array_intersect_assoc() - Вычисляет схождение массивов с дополнительной проверкой индекса