【问题标题】:Remove key from array if key is in another array如果键在另一个数组中,则从数组中删除键
【发布时间】:2011-07-22 08:56:12
【问题描述】:

我有两个数组

array1 (
    "akey1" => "dfksjhf"
    "akey2" => "adasjkgffs"
    "akey3" => "afkjhsafshfkah"
)

array2 (
    "akey2" => "could be anything..."
)

我正在寻找一个可以提供两个数组的 PHP 函数,然后会发生以下情况:

如果两个数组具有相同的键(无论数据如何),则从数组 1 中删除该键并返回数组 1 的其余部分。

如果运行该函数将返回:

array3 (
    "akey1" => "dfksjhf"
    "akey3" => "afkjhsafshfkah"
)

是否已经有一个 PHP 函数可以做到这一点,如果没有的话,在 PHP 中执行这个函数的最快和最有效的方法是什么?

非常感谢

【问题讨论】:

    标签: php arrays function multidimensional-array


    【解决方案1】:

    您正在寻找array_diff_key():

    $array3 = array_diff_key($array1, $array2);
    

    【讨论】:

      【解决方案2】:

      array_diff_key 应该适合你:

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

      $new_array = array_diff_key($array_1, $array_2);
      

      【讨论】:

        猜你喜欢
        • 2012-12-12
        • 1970-01-01
        • 2021-11-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-17
        • 1970-01-01
        • 2015-06-15
        相关资源
        最近更新 更多