簡體   English   中英

將相同元素添加到數組php的每個級別

[英]Adding same element to every level of array php

我需要在數組的每個級別上添加另一個元素(對不起,認為這是錯誤的術語)。

我有一個數組-

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;
        }
    }

我有另一個需要從帖子中添加的變量,它是一個字符串。

 $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_id'] = $film_id;

$res[$data]['film_id'] = $film_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;
        }
    }
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM