将元素插入PHP多维数组


Insert elements into PHP multi-dimensional array

我有一个PHP表单,其中字段定义为item[fieldname][],其中字段集通过Jquery Clone函数重复。

提交时,这些行如下所示

[item] => Array ( [itemdate] => Array ( [0] => 2012-07-10 20:44:05 [1] => 2012-07-12 20:44:17 )
                  [flditmname] => Array ( [0] => sdc [1] => sd ) 
                  [fieldtype] => Array ( [0] => 1 [1] => 2 ) 
                  [subscribe] => Array ( [0] => X [1] => X ) 
          )

现在,我需要在提交的每一行中插入一个元素item[id][](类似于事务号)。我不知道该怎么做。我想了两种方法:

  1. 找到行数,然后通过迭代将值相加。但为此,我遇到了一个问题,PHP计数函数没有返回正确的值(它将每个数组计数为一个,而不是行)。我可以从第一个元素开始计数,但我不会知道,因为我的字段是动态填充的。

  2. 某种数组推送,它可以遍历行并添加我的元素值。

请这里的专家帮助我如何做到这一点。或者,你有没有其他方法可以建议我如何处理表头项目交易过账,其中每个项目都引用了带有行项目编号的表头交易id(所有字段都是动态填充的)?结构大致如下:

标题:文档id|field1|field2|。。。

项目:文档id |行号|field3|field4|。。。

在过帐期间,文档id将以lastno+1的形式从数据库中提取。

不确定你到底想做什么,但这样的方法不起作用吗?

foreach ($items as &$item)
{
     $item['id'][] = $id;
}

编辑:

$key = key($items);
foreach ($items[$key] as $item)
{
     $items['id'][] = $id;
}
foreach($items as $index => $array)
{
    $items[$index]['id']=$id;
}

我知道这是旧的,但仍然可以帮助某人寻找类似的答案