PHP combining arrays
How can I combine both of these arra开发者_StackOverflow中文版ys and if there is duplicates of an array have only one represented using PHP.
Array
(
[0] => 18
[1] => 20
[2] => 28
[3] => 29
)
Array
(
[0] => 1
[1] => 8
[2] => 19
[3] => 22
[4] => 25
[5] => 28
[6] => 30
)
It sounds like you need:
array_unique(array_merge($first_array, $second_array));
Apply array_unique to the results of the array_merge function.
Example:
php > $f=array(1,2,3,4,5);
php > $r=array(4,5,6,7,8);
php > print_r(array_unique(array_merge($r,$f)));
Array
(
[0] => 4
[1] => 5
[2] => 6
[3] => 7
[4] => 8
[5] => 1
[6] => 2
[7] => 3
)
Just use the sum operator to merge the values of the two arrays, for instance:
$first = array(18, 20, 21, 28, 29);
$second = array(1, 8, 18, 19, 21, 22, 25, 28, 30); // Contains some elements of $first
$sum = $first + $second;
the resulting array shall contain the elements of both arrays, then you can filter out duplicates using array_unique $result = array_unique($sum);
. At this point the resulting array will contain the elements of both arrays but just once:
Array
(
[0] => 18
[1] => 20
[2] => 21
[3] => 28
[4] => 29
[5] => 22
[6] => 25
[7] => 28
[8] => 30
)
精彩评论