繁体   English   中英

PHP比较二维数组

[英]PHP compare two dimension array

我想知道如何比较两个二维数组的值。

第一个阵列

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,它返回发现与另一个数组(包括其索引键)不同的数组项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM