本文介绍了检查多维数组之间的差异的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试从多维数组中删除所有元素等于另一个多维数组的方法。
i'm trying a way to remove from a multidimensional array, all the elements equal to another multidimensional array.
例如,我拥有这两个数组;
For example, i've these two arrays;
$array1 = Array ( [0] => Array ( [item1] => 3017, [item2] => 7 ), [1] => Array ( [item1] => 3018, [item2] => 4 ), [2] => Array ( [item1] => 3020, [item2] => 9 ), [3] => Array ( [item1] => 3024, [item2] => 5 ) )和
$array2 = Array ( [0] => Array ( [item1] => 3017, [item2] => 7 ), [1] => Array ( [item1] => 3018, [item2] => 200 ), [2] => Array ( [item1] => 3020, [item2] => 300 ), [3] => Array ( [item1] => 3024, [item2] => 5 ) )这两个数组的区别在于元素[1]和[2]中[item2]的值。
The difference beetween these two arrays is the value of [item2] in element [1] and [2].
我想要一个仅包含第一个数组的不同值的数组。就我而言,应该是:
I want get an array that contains only the different values of the first array. In my case, should be:
array_diff = array( [1] => Array ( [item1] => 3018, [item2] => 4 ), [2] => Array ( [item1] => 3020, [item2] => 9 ) )推荐答案
使用json比较;)
$jsonDiff = array_diff(array_map('json_encode', $array1), array_map('json_encode', $array2)); $arrayDiff = array_map('json_decode', $diff);致谢。
更多推荐
检查多维数组之间的差异
发布评论