How to merge multidimensional array into an array

I have an array like this

Array
(
    [0] => Array
        (
            [0] => 3
        )

    [1] => Array
        (
            [0] => 3
            [1] => 4
        )

)

I want to remove duplicate values and merge into single array like this

Array
(
    [0] => Array
        (
            [0] => 3
            [1] => 4
        )

)

>Solution :

Merge the arrays into one and run array_unique:

<?php
$in = [
    [3],
    [3,4]
];

$out = [array_unique( array_merge( ...$in ) )];

print_r($out);

UPD: as vee mentioned, this will generate incorrect keys. If keys matter, here’s an improved version:

<?

$in = [
    [3],
    [3,4]
];

$out = [ array_values( array_unique( array_merge( ...$in ) ) ) ];

print_r($out);

Leave a Reply