PHP比较二维数组
我想知道如何比较两个二维数组的值。PHP比较二维数组
第一阵列
Array 1
(
[0] => Array
(
[0] => a
)
[1] => Array
(
[0] => b
)
[2] => Array
(
[0] => c
)
}
第二个
Array 2
(
[0] => Array
(
[0] => a
)
[1] => Array
(
[0] => d
)
[2] => Array
(
[0] => e
)
}
我需要让我的循环比较阵列和检查匹配的值。在我的例子中,array1 [0] [0] = a匹配array2 [0] [0] = a。如果匹配,php会输出一些html。
我foreach循环
foreach ($array1 as $arrays){
foreach($arrays as $array){
//need to compare array2 here not sure how to do it.
}
}
foreach($array1 as $k1 => $arrays) {
foreach($arrays as $k2 => $val) {
if($array2[$k1][$k2] == $val) {
// $array1[$k1][$k2] is equal to $array2[$k1][$k2]
}
}
} // end of foreach
的foreach($a as $k => $v)
语法做同样的事情为foreach($a as $v)
,但它也使与该值关联到$k
的关键。
您可以使用array_diff_assoclike所以
if(count(array_diff_assoc($array1,array2) != 0))
{
//Arrays are not the same
}else{
echo 'these following items are differing in throughout the arrays . ' . print_r(array_diff_assoc($array1,array2),true);
}
希望这有助于你。
另请注意array_diff_assoc,它返回的数组项与其他数组(包括其索引键)发现不同。
应该指出的是这个函数是SLOOOOOWWWWWWW。如果你有小阵列,但是当你添加很多元素时,它的指数变慢了 – mattbasta 2010-05-30 03:06:25
Amber得到了我需要的东西,谢谢你的提示,但是+1 – FlyingCat 2010-05-30 03:07:00
这是一个非常好的点先生 – RobertPitt 2010-05-30 03:07:15
“我需要知道我的循环是否可以比较数组以检查匹配的值。” - 好吧,保存你的文件并试试看吧) – miku 2010-05-30 02:44:38
....我没有任何东西可以尝试...... :( – FlyingCat 2010-05-30 02:46:13