Я хочу сделать пересечение между двумя многомерными массивами в php 5. E.g:
$a = array(array(), array(1), array(2));
$b = array(array(), array(0), array(2));
Я естественно пытаюсь:
array_intersect($a, $b)
Но это дает мне уведомление из-за преобразования массива в строку. В качестве обходного пути я хочу уточнить функцию сравнения, используя uintersect:
array_uintersect($a, $b, function($x, $y){return $x == $y ? 0 : ( $x < $y ? -1 : 1 );})
И это работает. Но это некрасиво. Мой вопрос прост, есть ли встроенный функция естественного сравнения, которая работает с массивом и которую я могу использовать как функцию обратного вызова, как в:
array_uintersect($a, $b, 'natcmp')
Спасибо!
Задача ещё не решена.
Других решений пока нет …