АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python или фреймворки. Сегодня последний день для записи! Жми!
196 of 410 menu
Бесплатный курс по выкладке сайтов на хостинг. Разбираем все нюансы! Начало 14 октября. Жми для записи!

Функция array_udiff

Функция array_udiff сравнивает массивы и возвращает элементы из первого массива, которые отсутствуют в последующих массивах. Для сравнения элементов используется callback-функция, которую вы определяете сами. Первый параметр - основной массив для сравнения, последующие параметры - массивы, с которыми сравнивается первый.

Синтаксис

array_udiff(array1, array2, ..., callback): array;

Пример

Сравним два массива чисел, используя callback-функцию для сравнения:

<?php $arr1 = [1, 2, 3, 4, 5]; $arr2 = [3, 4, 5, 6, 7]; $res = array_udiff($arr1, $arr2, function($a, $b) { return $a <=> $b; }); print_r($res); ?>

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

[1, 2]

Пример

Сравним массивы строк с помощью пользовательской функции сравнения:

<?php $arr1 = ['a', 'b', 'c', 'd']; $arr2 = ['c', 'd', 'e', 'f']; $res = array_udiff($arr1, $arr2, function($a, $b) { return strcmp($a, $b); }); print_r($res); ?>

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

['a', 'b']

Пример

Сравнение с несколькими массивами:

<?php $arr1 = [1, 2, 3, 4, 5]; $arr2 = [2, 3, 4]; $arr3 = [3, 4, 5]; $res = array_udiff($arr1, $arr2, $arr3, function($a, $b) { return $a <=> $b; }); print_r($res); ?>

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

[1]

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

  • функцию array_diff,
    которая вычисляет расхождение массивов
  • функцию array_intersect,
    которая вычисляет схождение массивов
  • функцию array_udiff_assoc,
    которая вычисляет расхождение с дополнительной проверкой индексов
byenru