Php array diff многомерный массив

array_diff

Сравнивает array с одним или несколькими другими массивами и возвращает значения в array , которых нет ни в одном из других массивов.

Parameters

Return Values

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

Examples

Пример # 1 array_diff () Пример

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

Множественные вхождения в $array1 обрабатываются одинаково. Это выведет:

Пример # 2 Пример array_diff () с несовпадающими типами

Два элемента считаются равными тогда и только тогда, когда (string) $elem1 === (string) $elem2 . То есть, когда строковое представление одинаково.

 // This will generate a Notice that an array cannot be cast to a string. $source = [1, 2, 3, 4]; $filter = [3, 4, [5], 6]; $result = array_diff($source, $filter); // Whereas this is fine, since the objects can cast to a string. class S < private $v; public function __construct(string $v) < $this->v = $v; > public function __toString() < return $this->v; > > $source = [new S('a'), new S('b'), new S('c')]; $filter = [new S('b'), new S('c'), new S('d')]; $result = array_diff($source, $filter); // $result now contains one instance of S('a'); ?>

Чтобы использовать альтернативную функцию сравнения, см. Array_udiff () .

Notes

Note:

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

See Also

  • array_diff_assoc () — Вычисляет разницу массивов с дополнительной проверкой индекса
  • array_udiff () — вычисляет разницу массивов с помощью функции обратного вызова для сравнения данных
  • array_intersect () — вычисляет пересечение массивов
  • array_intersect_assoc () — Вычисляет пересечение массивов с дополнительной проверкой индекса
PHP 8.2

(PHP 4,5,7,8)array_count_values Считает все значения массива array_count_values()возвращает массив значений,используя в качестве ключей и их частоту.

(PHP 4 4.3.0,5,7,8)array_diff_assoc Вычисляет разность массивов с дополнительной проверкой индексов Сравнивает массив с массивом и возвращает разность.

(PHP 5 5.1.0,7,8)array_diff_key Вычисляет разность массивов,используя ключи для сравнения Сравнивает ключи из массива с массивами и возвращает значение

Источник

array_diff

Сравнивает array1 с одним или несколькими другими массивами и возвращает значения из array1 , которые отсутствуют во всех других массивах.

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

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

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

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

Возвращает array , содержащий элементы array1 , отсутствующие в любом из всех остальных массивах.

Примеры

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

$array1 = array( «a» => «green» , «red» , «blue» , «red» );
$array2 = array( «b» => «green» , «yellow» , «red» );
$result = array_diff ( $array1 , $array2 );

Множественные совпадения в $array1 обрабатываются как одно. Результат будет следующим :

Примечания

Замечание:

Два элемента считаются одинаковыми тогда и только тогда, если (string) $elem1 === (string) $elem2. Другими словами, когда их строковое представление идентично.

Замечание:

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

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

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

Источник

array_diff

Сравнивает array с одним или несколькими другими массивами и возвращает значения в array , которых нет ни в одном из других массивов.

Parameters

Return Values

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

Examples

Пример # 1 array_diff () Пример

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

Множественные вхождения в $array1 обрабатываются одинаково. Это выведет:

Пример # 2 Пример array_diff () с несовпадающими типами

Два элемента считаются равными тогда и только тогда, когда (string) $elem1 === (string) $elem2 . То есть, когда строковое представление одинаково.

 // This will generate a Notice that an array cannot be cast to a string. $source = [1, 2, 3, 4]; $filter = [3, 4, [5], 6]; $result = array_diff($source, $filter); // Whereas this is fine, since the objects can cast to a string. class S < private $v; public function __construct(string $v) < $this->v = $v; > public function __toString() < return $this->v; > > $source = [new S('a'), new S('b'), new S('c')]; $filter = [new S('b'), new S('c'), new S('d')]; $result = array_diff($source, $filter); // $result now contains one instance of S('a'); ?>

Чтобы использовать альтернативную функцию сравнения, см. Array_udiff () .

Notes

Note:

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

See Also

  • array_diff_assoc () — Вычисляет разницу массивов с дополнительной проверкой индекса
  • array_udiff () — вычисляет разницу массивов с помощью функции обратного вызова для сравнения данных
  • array_intersect () — вычисляет пересечение массивов
  • array_intersect_assoc () — Вычисляет пересечение массивов с дополнительной проверкой индекса
PHP 8.2

(PHP 4,5,7,8)array_count_values Считает все значения массива array_count_values()возвращает массив значений,используя в качестве ключей и их частоту.

(PHP 4 4.3.0,5,7,8)array_diff_assoc Вычисляет разность массивов с дополнительной проверкой индексов Сравнивает массив с массивом и возвращает разность.

(PHP 5 5.1.0,7,8)array_diff_key Вычисляет разность массивов,используя ключи для сравнения Сравнивает ключи из массива с массивами и возвращает значение

Источник

Читайте также:  Python class in class example
Оцените статью