为了账号安全,请及时绑定邮箱和手机立即绑定

php怎么使二维数组变一维数组同时去掉相同元素?

php怎么使二维数组变一维数组同时去掉相同元素?

PHP
猛跑小猪 2019-03-11 10:18:11
Array ( [0] => Array ( [0] => 1 ) [1] => Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 5 ) ) 使上面的数组变成 Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 5 ) 这样的形式
查看完整描述

4 回答

?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

谢邀~

$tmpData = [
    [1],
    [1,2,3,5],
];

$result = array_reduce($tmpData, function ($result, $value) {
    return array_merge($result, $value);
}, []);

$uniqRes = array_unique($result);
$indexRes = array_values($uniqRes);

var_dump($indexRes);

上面应该就是你想要的答案了。

哈哈,强调下~凡遇到此类问题,千万不要用foreach,第一反应是PHP内置函数

查看完整回答
反对 回复 2019-03-18
?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

我想的话可以

array_reduce + array_unique + array_merge 处理吧

//还是这个简单点

array_unique(array_merge(...$arr))

//原先说的是这个

$mergeResult = array_unique(array_reduce($arr, function($result, $item) {
    return array_merge($result, $item);
}, []));
查看完整回答
反对 回复 2019-03-18
?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

笨方法直接foreach in_array吧

查看完整回答
反对 回复 2019-03-18
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

array_merge($arr[0],$arr[1]) 原理就是相同的会覆盖掉

查看完整回答
反对 回复 2019-03-18
  • 4 回答
  • 0 关注
  • 537 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信