array_diff问题
问题描述:
我很困惑array_diff行为array_diff问题
为什么流派不存在于差异数组? 你知道如何解决这个问题吗?
-code
<?php
$array1 = array
(
'value01' => '0',
'value02' => 'v2',
'genre' => '1',
'type' => 'text',
'contry' => 'us',
'data' => '1',
);
$array2 = array
(
'value01' => 'v1',
'value02' => 'v2',
'genre' => '0',
'type' => 'text',
'contry' => 'canada',
'data' => '1',
);
print_r(array_diff($array1,$array2));
-result
$ php diff.php
Array
(
[contry] => us
)
答
array_diff
在值工作该数组,并忽略这些键。
因为genre
您的第一阵列中的值是1
,这意味着,如果该值1
用于第二阵列中的任何键发生,则genre
密钥将被从所述第一数组中删除。
看看你的阵列没有钥匙,你会明白我的意思。你基本上有两个值列表,['0','v2','1','text','us','1']
和['v1','v2','0','text','canada','1']
。第一个列表中唯一没有出现在第二个列表中的值是'us'
。
我猜你可能会想看看array_key_diff()或array_diff_assoc()。