Php 向数组的每一级添加相同的元素

Php 向数组的每一级添加相同的元素,php,arrays,Php,Arrays,我需要在数组的每个级别添加另一个元素(对不起,我认为这是一个糟糕的术语) 我有一个数组- Array ( [0] => Array ( [actor_rt_id] => 162683283, [item_number] => 3 ) [1] => Array ( [actor_rt_id] => 162657351, [item_number] => 5 ) ) 此代码生成数组。注释

我需要在数组的每个级别添加另一个元素(对不起,我认为这是一个糟糕的术语)

我有一个数组-

Array ( [0] => Array ( 
      [actor_rt_id] => 162683283,
      [item_number] => 3 ) 
         [1] => Array ( 
      [actor_rt_id] => 162657351,
       [item_number] => 5 ) 
)
此代码生成数组。注释掉的行是我试图添加到数组中的。注释前的代码创建数组

$data_itemone['actor_rt_id'] = $this->input->post('actor_id');
$data_itemtwo['item_number'] = $this->input->post('item_number');
$data_item = array_merge($data_itemone, $data_itemtwo);
$res = [];
    foreach($data_item as $key => $value){
        foreach ($value as $data => $thevalue) {
            $res[$data][$key] = $thevalue;
            //$res['film_id'] = $film_id;
        }
    }
我需要从post中添加另一个变量,它是一个字符串

 $film_id = $this->input->post('film_id');
我需要它在数组中,就像这样-

Array ( [0] => Array ( 
          [actor_rt_id] => 162683283,
          [item_number] => 3,
          [film_id]    => 52352
          ) 
             [1] => Array ( 
          [actor_rt_id] => 162657351,
          [item_number] => 5,
          [film_id]    => 52352
          ) 
)
…但我的代码(未注释)生成-

Array ( [0] => Array ( 
        [actor_rt_id] => 162683283,
        [item_number] => 3 
      )
        [film_id] => 16639,
        [1] => Array 
                ( [actor_rt_id] => 162657351,
                  [item_number] => 5 )
 )
我试过一些东西。似乎无法让它工作

变化

$res['film\u id']=$film\u id

$res[$data]['film\u id']=$film\u id

这将把它添加到正确的数组中。

如果您尝试此操作,该如何操作

$data_itemone['actor_rt_id'] = [123, 245];
$data_itemtwo['item_number'] = [456, 789];
$film_id = 52352;
$data_item = array_merge($data_itemone, $data_itemtwo);
$res = [];
foreach($data_item as $key => $value){
    foreach ($value as $data => $thevalue) {
        $res[$data][$key] = $thevalue;
        $res[$data]['film_id'] = $film_id;
    }
}
print_r($res);
试试这个

<?
    $data_itemone['actor_rt_id'] = $this->input->post('actor_id');
    $data_itemtwo['item_number'] = $this->input->post('item_number');
    $film_id = $this->input->post('film_id');
    $data_item = array_merge($data_itemone, $data_itemtwo);
    $res = [];
    foreach($data_item as $key => $value){
        foreach ($value as $data => $thevalue) {
            $res[$data][$key] = $thevalue;
            $res[$data]['film_id'] = $film_id;
        }
    }
?>


部分的
$data\u itemone
$data\u itemtwo
令人困惑。从何处获取数组内容?它们来自具有相同名称的表单输入,如name=“actor\u id[]”,但有多个输入,因此它会生成一个数组。我进行了合并,这样他们将以我需要的格式生成一个数组。。。所以$data\u itemone和$data\u itemtwo是数组,但是$film\u id只是一个字符串。。。但是我需要将它添加到我喜欢的数组中。film_id是一个单一的数字,在数组的每次迭代中都是相同的。
array_walk_recursive($myArray,function($value)use($film_id){if(is_array($value)){$value['film u id']=$film id;}else{$value=array(0=>value,'film id'=>film id;})哦,谢谢!我知道括号里是这样的东西,但我没有试过。