在数组中选择不同的和常用的值 - php函数

时间:2014-07-02 12:16:14

标签: php arrays

这样做的最佳方法是什么。你有两个输入数组,比方说:

$current = array('strawberry', 'apple', 'banana', 'peach');
$new = array('apple', 'blackberry', 'mango', 'banana');

现在编写一个返回两个数组的类/函数,如:

$add = array('blackberry', 'mango');
$del = array('strawberry', 'peach');

编写执行该任务的函数/类的最佳方法/最有效的方法是什么?

我想到这样的事情:

function replaceTags($new, $current) {
    $tmp = array_intersect($new, $current);
    $add = array_diff($new, $tmp);
    $del = array_diff($current, $tmp);

    return array($add, $del);
}

我想知道PHP内置函数是否最适合该任务? 任何建议都会受到赞赏;)

1 个答案:

答案 0 :(得分:0)

array_diff($ array1,$ array2)返回$ array1中不在$ array2中的值。

因此,您可以使用以下方法获取已添加的值:

$add = array_diff($new, $current)

以及使用以下内容删除的值:

$del = array_diff($current, $new)