"2017-08-31":["5948a0dd21146a43fdcfef5a","5948a0dd21146a43fdcfef5a"]
"2017-08-22":["5948a0dd21146a43fdcfef5a"]
"2017-08-09":["59461ceae6179b19403c6a19","59461ceae6179b19403c6a19"]
"2017-08-08":["59461ceae6179b19403c6a19","59461ceae6179b19403c6a19"]
我有一个像这样的数组,键是一个日期和多个与该日期相关的值,但是我需要使用该键的唯一值。如何做到这一点? 我试过 array_unique ,但没有运气!
答案 0 :(得分:3)
只需同时使用array_map和array_unique。
<?php
$a = json_decode('{"2017-08-31":["5948a0dd21146a43fdcfef5a","5948a0dd21146a43fdcfef5a"],
"2017-08-22":["5948a0dd21146a43fdcfef5a"],
"2017-08-09":["59461ceae6179b19403c6a19","59461ceae6179b19403c6a19"],
"2017-08-08":["59461ceae6179b19403c6a19","59461ceae6179b19403c6a19"]}', true);
echo json_encode(array_map("array_unique", $a));
答案 1 :(得分:2)
$array = your array
$array = array_map(function($val){return array_unique($val);}, $array);
答案 2 :(得分:0)
如果可能的话,最好使用SQL。否则,你可以试试这个:
$array = array_unique($array, SORT_REGULAR);