<?php
$array1 = ['keepThis', 'remove', 'keep', 'save', 'delete'];
$array2 = ['hangOnto', 'remove', 'retain', 'keep', 'delete'];
$clean1 = $array1;
$clean2 = array_diff_ukey(
$array2,
$array1,
function($a, $b) use (&$clean1, $array1, $array2) {
if (isset($array2[$b]) && $array2[$b] === $array1[$b]) {
unset($clean1[$b]);
}
return strcmp($array2[$a], $array1[$b]);
}
);
print_r($clean1);
print_r($clean2);
- Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- Array
(
[0] => keepThis
[2] => keep
[3] => save
)
Array
(
[0] => hangOnto
[2] => retain
)
preferences:
126.63 ms | 402 KiB | 121 Q