我想检查两个数组是否相同。通常每个人都会使用这样的东西:
if($arrayA == $arrayB){
//do something...
}
但我的问题是,如果数组包含相同的值,我该如何检查?
例如,数组A看起来像:
array(2) {
[0]=>
array(6) {
["price"]=>
string(5) "50"
["shop"]=>
string(4) "9509"
}
[1]=>
array(6) {
["price"]=>
string(5) "5"
["shop"]=>
string(4) "9509"
}
}
和数组B看起来像:
array(2) {
[0]=>
array(6) {
["price"]=>
string(5) "5"
["shop"]=>
string(4) "9509"
}
[1]=>
array(6) {
["price"]=>
string(5) "50"
["shop"]=>
string(4) "9509"
}
}
如您所见,只有内部数组已经转换(5& 50)。但我想成真。我只是想知道两个数组是否包含相同的信息。不,如果它们完全相同!
我该怎么检查?
问候,谢谢!
答案 0 :(得分:0)
听起来你的数组里面包含不同类型的数据,这不是推荐的实现。
我的建议我的朋友是创建一个包含您需要的所有属性的对象,然后您可以覆盖扩展接口compare
的方法comparable
。
如果您仍想比较数组,请尝试Arrays.equals(arr1, arr2)
,但它们不能是通用的