用于比较2个数组的散列样式数组

时间:2013-05-19 14:55:37

标签: php isset array-key-exists

我喜欢将数据库中的数组与另一个数组进行比较,以使用issetarray_key_exists生成缺少ID的新数组。这是我正在创建的数据库中的数组。

foreach ($listings as $listing) {
    $local_ids[$listing['id']] = 'true';
}

$local_ids = array(
    '567' => true,
    '568' => true,
    '569' => true,
    '570' => true,
    '571' => true,
    '572' => true,
    '573' => true
);

$new_ids = array(
    '568',
    '569',
    '572',
    '573',
    '574',
    '575',
    '576',
    '577'
);

考虑到以上两个数组,我想循环使用它们,以便给我一个567, 570, 571已删除的结果。

我修改了$new_ids,因为此列表可能包含也可能不包含新{而不是$local_ids的ID。这些可以忽略,我只需要删除它们。

1 个答案:

答案 0 :(得分:0)

我知道一种类似这样的方法

<?php
$a1 = array("a" => "one", "two", "three", "four");
$a2 = array("b" => "one", "two", "three");
$result = array_diff($array1, $array2);

print_r($result);
?>
or

<?php
$a1 = array("a" => "one", "b" => "two", "c" => "three", "four");
$a2 = array("a" => "one", "two", "three");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>