数组去重 - PHP多维数组删除问题
怪我咯
怪我咯 2017-04-11 10:39:12
[PHP讨论组]

$arr数组,var_dump($arr)结果如下,只想要其中一个一个数组,怎么办?array_unique不对

array(2) {
  [0]=>
  string(12) "{"227":"18"}"
  [1]=>
  string(12) "{"228":"21"}"
}
array(2) {
  [0]=>
  string(12) "{"227":"18"}"
  [1]=>
  string(12) "{"228":"21"}"
}
怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(4)
阿神

你var_dump 一個變量,出現兩個數組結構,你在開玩笑麼

ringa_lee

如果两个元素一样的话,取其中一个不就行了
$arr = reset($arr);

天蓬老师

1.序列化2级数组(将数组转换成字符串),将2级数组转换成字符串元素
2.使用array_unique去除重复的元素
3.反序列化元素,还原为数组

$arrs = [
    [
        '{"227":"18"}',
        '{"228":"21"}'
    ],
    [
        '{"227":"18"}',
        '{"228":"21"}'
    ],
];
$serializeArrs = array_map('serialize',$arrs);

$uniqueArrs = array_unique($serializeArrs);

$unserializeArrs = array_map('unserialize',$uniqueArrs);

var_dump($unserializeArrs);
//array (size=1)
//  0 => 
//    array (size=2)
//      0 => string '{"227":"18"}' (length=12)
//      1 => string '{"228":"21"}' (length=12)
PHPz

unserialize(array_unique(array_map('serialize', $arr))[0])

(逃。。。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号