PHP多维数组遵循已定义的键结构

时间:2017-07-03 09:14:14

标签: php arrays multidimensional-array

我喜欢一个数组来遵循这样的定义结构:

array (
  'id' => '',
  'name' => '',
  'quantity' => '',
)

这是我想在多维数组列表中遵循的结构。例如:

array (
    array (
      'id' => 'GFKHF312',
      'name' => 'Item 1',
      'quantity' => 1
    ),
    array (
      'id' => 'YUKKU134',
      'name' => 'item 2',
      'quantity' => 5
    ),
    array (
      'id' => 'TRUT243',
      'name' => 'item 3',
      'quantity' => 10
    )
)

所以我想:

在传递的每个其他名称密钥中,当尝试向列表中添加新行时,应删除或过滤它。

示例:

# When passed this data
array (
    'id' => 'GFKHF312',
    'name' => 'Item',
    'quantity' => 1,
    'new_key' => 120,
    'other_key' => 'fsdfs',
)

# It should filter to this data
array (
    'id' => 'GFKHF312',
    'name' => 'Item',
    'quantity' => 1
)

其次,如果它没有在结构中定义所有键('id', 'name', 'quantity'),它应该失败(返回false或null)。

示例:

# When passed this data
array (
    'id' => 'GFKHF312',
    'quantity' => 1,
)

# It should return this data
false

是否可能使用php数组函数,例如array_diff,或者需要使用循环来完成此操作。

感谢您的帮助!

0 个答案:

没有答案