PHP - 如何添加密钥=>值到多维数组的特定部分?

时间:2010-10-03 23:35:05

标签: php arrays multidimensional-array

我如何插入一个键=>值对进入嵌套数组?

示例:

array
  1 => string 'a' (length=1)
  2 => string 'b' (length=1)
  3 => 
    array
      'this' => string 'that' (length=4)
      'meh' => string 'foo' (length=3)
      'blah' => 
        array
          'a' => int 1
          'b' => int 2
  4 => 
    array
      'this' => string 'that' (length=4)
      'meh' => string 'foo' (length=3)
      'blah' => 
        array
          'a' => int 1
          'b' => int 2

如何将x=>1添加到每个第二级数组...所以我会得到这个:

 array
  1 => string 'a' (length=1)
  2 => string 'b' (length=1)
  3 => 
    array
      'this' => string 'that' (length=4)
      'meh' => string 'foo' (length=3)
      'blah' => 
        array
          'a' => int 1
          'b' => int 2
      'x' => int 1 //Here's the added bit
  4 => 
    array
      'this' => string 'that' (length=4)
      'meh' => string 'foo' (length=3)
      'blah' => 
        array
          'a' => int 1
          'b' => int 2
       'x' => int 1 //Here's the added bit

2 个答案:

答案 0 :(得分:3)

$array[3]['x'] = 1;
$array[4]['x'] = 1;

或者,如果您在无限长度的数组上寻找自动化的东西:

foreach ($array as &$node) {
    if (is_array($node)) {
        $node['x'] = 1;
    }
}

答案 1 :(得分:0)

if(!is_array($array1['property']))
{
    $array1['property'] = array();
}

$array1['property']['x'] = 1;