Когда мне следует использовать array_udiff() вместо array_diff()?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Когда мне следует использовать array_udiff() вместо array_diff()?

Сообщение Anonymous »

Я пытаюсь понять функцию array_udiff().
Сбивает с толку тот факт, что обе функции array_diff() и array_udiff() дают одинаковые результаты при базовом сравнении двух плоских массивов.
Код:

Код: Выделить всё

echo "array_udiff()";
$a = array('a'=>'apple', 'c'=>'cat', 'b'=>'book');
$b = array('d'=>'dog');
echo "
";

print_r(array_udiff($a, $b, function($a, $b) {
if ($a < $b) {
return -1;
} elseif ($a > $b) {
return 1;
} else {
return 0;
}
}));
echo "array_diff()";
print_r(array_diff($a, $b));
Выход:

Код: Выделить всё

array_udiff()
Array
(
[a] => apple
[b] => cat
[c] => book
)

array_diff()
Array
(
[a] => apple
[b] => cat
[c] => book
)
Как видно из приведенного выше примера, выходные данные обеих функций одинаковы, тогда зачем нам использовать array_udiff()?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»