检查多维数组之间的差异 [英] check difference between multidimensional arrays

查看:76
本文介绍了检查多维数组之间的差异的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从多维数组中删除所有元素等于另一个多维数组的方法。

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);

致谢。

这篇关于检查多维数组之间的差异的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆