我有这两个数组
$array1 = Array (
[0] => 5
[1] => 25
[2] => 3
[3] => 9
[4] => 15
[5] => 8
[6] => 26
[7] => 1
);
$array2 = Array
(
[0] => 5
[1] => 25
[2] => 3
[3] => 9
[4] => 6
[5] => 26
[6] => 1
[7] => 53
[8] => 22
)
$array1
保留旧值,$array2
保存新值。我想用它创建三个不同的数组。
首先:第一个数组应该获取
$array1
中可用且$array2
中不可用的值,即已删除的值, 这就是我做的事情。
$delete = array_diff($array, $array2);
//Gives me following expected output
Array
(
[4] => 15
[5] => 8
)
第二个:第二个数组应该获取$ array1中不可用但在$ array2中添加的值,即新值,预期 在这种情况下输出是。
Array (
[0] => 6
[0] => 53
[0] => 22
)
第三个:第三个数组应该获取
$array1
中可用且在$array2
中仍然可用的公共值,数组值,即 相同或共同的价值观。在这种情况下的预期输出是。
Array (
[0] => 5
[1] => 25
[2] => 3
[3] => 9
[4] => 26
[5] => 1
)
答案 0 :(得分:3)
这会产生正确的输出:
<?php
$array1 = array(
0 => 5,
1 => 25,
2 => 3,
3 => 9,
4 => 15,
5 => 8,
6 => 26,
7 => 1
);
$array2 = array(
0 => 5,
1 => 25,
2 => 3,
3 => 9,
4 => 6,
5 => 26,
6 => 1,
7 => 53,
8 => 22
);
$deleted = array_diff( $array1, $array2);
var_dump( $deleted);
$insert = array_diff( $array2, $array1);
var_dump( $insert);
$same = array_intersect( $array1, $array2);
var_dump( $same);