Только возврат 0 или 1 в обратном вызове array_udiff() дает неожиданные результаты [дубликат]Php

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

Сообщение Anonymous »

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

function value_compare_func($a, $b){
if ($a === 'n_3') {
return 0;
}
return 1;
}
$array1 = array("n_1", "n_2", "n_3", "n_4" );
$array2 = array("green");
$result = array_udiff($array1, $array2, "value_compare_func");
print_r($result);
Ожидаемый результат:

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

Array([0] => 'n_1', [1] => 'n_2' , [3] => 'n_4' )
Но PHP выводит:

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

Array([1] => 'n_2' , [3] => 'n_4' )
Где находится [/b]?

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