检查多维数组键是否重复

时间:2015-10-14 12:44:48

标签: php arrays multidimensional-array

在搜索并做了一段时间后,我决定在Stackoverflow上提出这个问题,征求每个人的经验。

我正在尝试做的是找出有效的解决方案来检查一个数组是否与另一个数组具有相同的键,即使相应的值也不同。

输入数组示例

Array(

   ['type'] => 'first',
   ['triggers'] =>  Array
         (
           ['click'] => 'action1',
           ['push'] => 'action5',
           ['pull'] => Array
              (
                  ['event3'] => 'action6',
                  ['event4'] => 'action7'
               )
        )

)

这是原始数组示例,应与之比较,

Array(

   ['type'] => 'first',
   ['triggers'] =>  Array
         (
           ['click'] => 'action1',
           ['push'] => 'action2',
           ['pull'] => Array
              (
                  ['event1'] => 'action3',
                  ['event2'] => 'action4',
                  ['event3'] => 'action6'
               )
        )

)

以上示例采用相似(甚至相同)的数组结构,但在实际服务环境中,所有数组数据都是动态的。

我需要从比较中了解

  1. ['trigger'] ['push']的值将被更改
  2. ['trigger'] ['pull'] ['event1']的值将被更改
  3. ['trigger'] ['pull'] ['event2']的值将被更改
  4. 我知道可以通过foreach循环检查,但实际数据由更大的维数组成,并且可能会影响性能。

    谢谢!

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用array_diff