通过删除PHP中的重复项和空值来合并单个数组中的数组值

I have an array like this:

Array
(
    [0] => Array
        (
             [0] => Array
                (
                    [id] => 1234
                    [name] => John
                )

             [1] => Array
                (

                )
        )

    [1] => Array
        (
            [0] => Array
                (
                    [id] => 1234
                    [name] => John
                )

            [1] => Array
                (
                    [id] => 5678
                    [name] => Sally
                )
            [2] => Array
                (
                    [id] => 1234
                    [name] => Duke
                )
)

My resulting array should be the following (basically merging and getting rid of duplicates and removing null values):

Array
(
    [0] => Array
        (
           [id] => 1234
           [name] => John
        )

    [1] => Array
        (
           [id] => 5678
           [name] => Sally
        )
    [2] => Array
        (
           [id] => 1234
           [name] => Duke
        )
)

Is there an easy way to do this using PHP's array functions?

EDIT: So far I have this:

$result = array();
      foreach ($array as $key => $value) {
        if (is_array($value)) {
          $result = array_merge($result, $value);
        }
      }
print_r($result);

Use array_merge to merge the arrays. Then use array_unique to remove duplicates. Finally, to remove null keys, use a loop.

foreach($array as $key=>$value)
{
    if(is_null($value) || $value == '')
        unset($array[$key]);
}

Documentation on these methods can be found here.