Php 需要合并数组,但如果重复,则只保留一个值

Php 需要合并数组,但如果重复,则只保留一个值,php,arrays,Php,Arrays,我有两个数组,它们的键相同,但值不同。我需要合并它,但如果值相同,只留下其中一个 $array1 = array('firstname'=> $may_name, 'lastname'=>$my_last_name, 'address'=>$addres_1); $array2 = array('firstname'=> $may_name, 'lastname'=>$my_last_name, 'address'=>$addres_2); 我需要得到:

我有两个数组,它们的键相同,但值不同。我需要合并它,但如果值相同,只留下其中一个

$array1 = array('firstname'=> $may_name, 'lastname'=>$my_last_name, 'address'=>$addres_1);

$array2 = array('firstname'=> $may_name, 'lastname'=>$my_last_name, 'address'=>$addres_2);
我需要得到:

$array_result = array('firstname'=> $may_name, 'lastname'=>$my_last_name, 'address'=>$addres_1, 'address'=>$addres_2);
有人能帮忙解决这个问题吗?
array\u merge
对我不起作用。

首先需要使用
array\u merge()
函数合并两个数组。然后使用
array\u unique()
函数从数组中获取唯一元素,该函数将获得结果

var_dump(array_unique(array_merge($array1, $array2)));
编辑

如果输入数组具有相同的字符串键,则该键的后一个值将覆盖前一个值。但是,如果数组包含数字键,则后面的值将不会覆盖原始值,而是追加。


谢谢@Marco

你看到了吗?你不能在同一级别有两个相同的键
array\u unique
实际上并不需要
array\u merge
已执行此任务。在我的情况下,
array\u merge
不执行此任务。我无法得到我需要的。。。或者我做错了什么。。。