我有2个多维数组
ARRAY1
0 => array (105, 44, 20, 0)
1 => array (106, 44, 21, 2)
2 => array (107, 45, 20, 0)
数组2
0 => array (124, 44, 20, 1)
1 => array (105, 44, 20, 0)
2 => array (107, 45, 20, 0)
现在我需要找出array1中的元素是否在array2中没有更改。
我需要创建array1,然后用户更改数组中的某些值,删除一些数组或重新排序。它将创建array2。之后我需要比较array1 [0]中的数组及其所有值是否存在于array2中,并对array1中的所有元素进行比较。如果array1中的元素在array2中是相同的,我将它保存到db。如果删除了元素并且不在array2中,或者某些值已更改,我需要从db中删除它。 非常感谢
答案 0 :(得分:0)
我没有想到你的情况,但我想你是在问这个:
$array1=array(0 => array (105, 44, 20, 0),
1 => array (106, 44, 21, 2),
2 => array (107, 45, 20, 0));
$array2 = array(0 => array (124, 44, 20, 1),
1 => array (105, 44, 20, 0),
2 => array (107, 45, 20, 0));
for($i = 0; $i < sizeof($array1); $i++){
for($j = 0; $j < sizeof($array2); $j++){
if(empty(array_diff($array1[$i], $array2[$j])))
die("exist"); // so array1[$i] exist in array2
}
}
答案 1 :(得分:0)
$index1 = 0
$index2 = 0
foreach ($array1 as $value1)
{
$index1++;
foreach ($array2 as value2)
{
if (!empty(array_diff ($value1, $value2))
// $array[$index1] !== $array[$index2]
else
// $array[$index1] == $array[$index2]
$index2++;
}
}