2016-09-30 151 views
0

我試圖用Laravel創建一個數組,但是需要自定義一些值。創建Laravel數組

例如,如果我返回$user->rounds將返回

"data": [ 
    { 
     "id": 3, 
     "name": "sample name" 
    }, 
    { 
     "id": 4, 
     "name": "sample name 2" 
    } 
] 

我希望像定製

​​

我試圖做到這一點,通過下面的迴歸東西代碼:

$data = array(); 

foreach ($user->rounds as $r) { 
    $data = [ 
     'id' => $r->id, 
     'name' => $r->name, 
     'extra' => 'Test Extra' 
    ]; 
} 

return $data; 

但它只返回一輪而它應該返回納克3.

+5

你覆蓋'$ data'。我假設你想做'$ data [] = ...'注意數據後面的多餘'[]'。 – Andrew

回答

1

您需要陣列添加到$data陣列每次迭代:

此外,您還可以使用array_push()函數,該函數。

0

嘗試做這樣在每次循環這個

$data = array(); 
$i=0; 
foreach($user->rounds as $r){ 
    $data[$i] = [ 
    'id' => $r->id, 
    'name' => $r->name, 
    'extra' => 'Test Extra' 
    ]; 
    $i++; 
} 
return $data;