我正在使用codeigniter。
我想要使用php的array_diff
函数来区分两个数组。
由于关联数组,我使用了call_user_func_array
并得到了记录。
$result_sun = call_user_func_array('array_merge', $data['sun_holiday']);
$result_sat = call_user_func_array('array_merge', $data['third_sat']);
但是当我要改变这两个数组时,
$result = array_diff($result_sun,$result_sat);
它只显示第一个数组$result_sun
的记录。
$result_sun = Array
(
[0] => 2015-09-06
[1] => 2015-09-13
[2] => 2015-09-20
[3] => 2015-09-27
)
$result_sat = Array
(
[0] => 2015-09-19
)
那么,为什么差异没有发生?
答案 0 :(得分:1)
$result1 = array_diff($result_sun,$result_sat);
$result2 = array_diff($result_sat,$result_sun);
$result=array_merge($result1,$result2);
将$ result_sun与一个或多个其他数组进行比较,并返回$ result_sun中任何其他数组中不存在的值。 因此,如果你把你的代码放在那么我们可以提供更准确的答案
,那么两者之间的区别然后合并就会很好