Open milo opened 3 years ago
So it's like array_diff_assoc
but with strict comparision?
Yes. Behaviour probably same as:
return array_udiff_assoc($to, $from, function ($a, $b) {
return $a === $b ? 0 : ($a > $b ? 1 : -1); # spaceship cannot be used because null <=> false === 0
});
I write probably, because I'm not sure why yes/no comparator can return -1/0/1 and how result depends on it. And the foreach loop is ~3 times faster.
Proposed
Arrays::updateDiff()
compares two associative arrays and returns such items from later one, which does not exist or differs from first one. By other words - which items have to be updated in first array, to be the same as second array.As far as I know, there is no PHP function for that (playground). For examle:
There are posible things to debate:
callable $comparator = null