benhowdle89
benhowdle89

Reputation: 37464

php array unique on two arrays

Two PHP arrays:

$array1 = array(1,2,3,4,5);
$array2 = array(1,2,3,4,5,6,7,8,9,10);

Now how can I end up with an array like this:

$array3 = array(6,7,8,9,10);

Upvotes: 0

Views: 195

Answers (4)

Bikash Ranjan
Bikash Ranjan

Reputation: 146

$array1 = array(1,2,3,4,5);
$array2 = array(1,2,3,4,5,6,7,8,9,10);

$output = array_merge(array_diff($array1, $array2), array_diff($array2, $array1));
print_r($output);

Output:

Array ( [0] => 6 [1] => 7 [2] => 8 [3] => 9 [4] => 10 ) 

Upvotes: 0

dan-lee
dan-lee

Reputation: 14492

As array_diff returns a relative complement you can use this code for a full diff, where it doesn't matter on which side the diff should be made:

$array3 = array_diff(array_merge($array1, $array2), array_intersect($array1, $array2)); 

Upvotes: 0

Jeffrey Monte
Jeffrey Monte

Reputation: 700

use array_diff

$array3 = array_diff($array2, $array1)

Upvotes: 0

Jon
Jon

Reputation: 437336

With array_diff:

$array3 = array_diff($array2, $array1);

Upvotes: 6

Related Questions