<?php
$obj1 = new stdClass();
$obj1->attr = 'Rod';
$obj2 = new stdClass();
$obj2->attr = 'Jane';
$obj3 = new stdClass();
$obj3->attr = 'Freddy';
$array1 = array(
$obj1,
$obj2,
$obj3
);
$array2 = array(
$obj1,
$obj3,
$obj2
);
function return1($a,$b) {
if ($a->attr == $b->attr) {
return 0;
} else {
return 1;
}
}
function returnNeg1($a,$b) {
if ($a->attr == $b->attr) {
return 0;
} else {
return -1;
}
}
//$diff1 = array_diff($array1, $array2);
$diff2 = array_udiff($array1, $array2, 'returnNeg1');
$diff3 = array_udiff($array1, $array2, 'return1');
//$int = array_intersect($array1, $array2);
$int2 = array_uintersect($array1, $array2, 'returnNeg1');
$int3 = array_uintersect($array1, $array2, 'return1');
//var_dump($diff1);
var_dump($diff2);
var_dump($diff3);
//var_dump($int1);
var_dump($int2);
var_dump($int3);
preferences:
42.32 ms | 402 KiB | 5 Q