Неожиданные результаты, когда функция обратного вызова array_udiff() возвращает либо 0, либо 1 [дубликат]Php

Кемеровские программисты php общаются здесь
Anonymous
Неожиданные результаты, когда функция обратного вызова array_udiff() возвращает либо 0, либо 1 [дубликат]

Сообщение Anonymous »

$a = array(1,2,3,4,5);
$b = array(1,6,3,4,5);
echo "
";
print_r(array_udiff($a,$b,function($a,$b){
return ($a === $b)? 0:1;
}));


Как сказано в руководстве:
Он должен возвращать массив, содержащий все значения массива1, которых нет ни в одном из других аргументов.
Если нужно сравнивать только два массива, я думаю, это будет похоже на array_diff().

Я ожидаю, что это вернет:

Array
(
[0] => 2
)


Однако результат:

Array
(
[0] => 1
[1] => 2
[2] => 3
[4] => 5
)

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