2016-11-08 8 views
1

私は配列内に配列を持っていて、何かを追加したいと思います。Laravel複数のレコードを保存

$options = $request->options; 
foreach ($options as $option) { 
    $option['poll_id'] = $this->id; 
} 

dd($options); 

しかし、何らかの理由で配列に追加されません。

だから私は、この受信:

array:1 [ 
    0 => array:1 [ 
    "name" => "testtest" 
    ] 
] 

をしかし、私はこれを期待:

array:1 [ 
    0 => array:1 [ 
    "name" => "testtest", 
    "poll_id" => 1 

    ] 
] 

答えて

1

あなたはそうforeachは、各反復で$optionを破壊している$optionsを変更していません。代わりに次のような方法を試してください:

$options = []; 
foreach ($request->options as $key => $value) { 
    $options[$key]['poll_id'] = $this->id; 
} 
1

あなたは配列

// Suppose your $request->options is like: 
$options = [ 
    0 => [ 
    "name" => "testtest" 
    ] 
]; 

foreach ($options as $key => $option) { 
    $options[$key]['poll_id'] = 3; // Changing variable - $options here. 
} 

$key属性を使用してそれを行う必要があり、それが動作するはずです!

// $options would be like: 

array:1 [▼ 
    0 => array:2 [▼ 
    "name" => "testtest" 
    "poll_id" => 3 
    ] 
] 
関連する問題