【问题标题】:Removing items from an array if they exist in another array [duplicate]如果它们存在于另一个数组中,则从数组中删除它们[重复]
【发布时间】:2011-05-19 20:04:35
【问题描述】:

可能重复:
Remove item from array if it exists in a 'disallowed words' array

假设我有以下两个包含整数的 PHP 数组:

$foo = array(1, 5, 9, 14, 23, 31, 45);
$bar = array(14, 31, 36);

我想删除$foo 中存在相同值的项目$bar

因此该过程的结果将创建一个 $filteredFoo 数组,其中包含:

1, 5, 9, 23, 45

查看 php.net 上的文档后,似乎没有执行此类操作的现有函数。那么我唯一的选择是使用 foreach 并在每次迭代时遍历 $foo 检查值 $bar 吗?

【问题讨论】:

    标签: php arrays


    【解决方案1】:

    你可以使用array_diff():

    返回一个数组,其中包含 array1 中不存在于任何其他数组中的所有条目。

    $filteredFoo = array_diff($foo, $bar);
    

    【讨论】:

    • 非常感谢,树木和所有的木材
    猜你喜欢
    • 1970-01-01
    • 2012-05-22
    • 2017-02-16
    • 2010-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多