2017-01-07 108 views
-2

我在laravel中輸出以下內容。如何在laravel中的數組對象中添加鍵值對

[ {"id":"1","name":"Mite Salary"}, {"id":"2","name":"Riky"}, {"id":"3","name":"Raj"} ] 

我想添加其他鍵值對的年齡:person_age和希望輸出

[ {"id":"1","name":"Mite Salary", "age":'20'}, {"id":"2","name":"Riky", "age":'25'}, {"id":"3","name":"Raj", "age":"40"} ] 

這個年齡段是從MySQL數據庫來爲$y = DB::table("age")->get(); 現在考慮$ Y = [20, 25,40];

但我沒有得到如何與foreach循環做到這一點。請幫助我。感謝你的期望

回答

0

這是什麼你在做什麼是不好的邏輯,因爲你不能知道每個人多大年齡因爲人和年齡沒有連接如果一個人被刪除會發生什麼你會刪除相同的年齡id?你應該做的關係:

1)添加age_id到您的個人表

2)Person模型添加關係

public function age() 
{ 
    return $this->belongsTo('App\Age'); 
} 

3)現在,當您使用$person->age->"Name of coulmn"

如果你仍然想這樣做的方式是

$i = 0; 
foreach($pearsons as $person) { 
    $person->age = $age[$i] 
    $i++ 
} 
+0

Actual我只是把年齡當做一個例子。還有一些我正在添加的對象。我只想知道如何添加新的鍵值對 – Mohammed

+0

您正在使用laravel集合還是使用對象數組? – DokiCRO

+0

其實我正在通過我作爲輸出獲得上述提及(第一個)。 – Mohammed

0

其實我所做的是我用foreach循環的 $ X = [ {"id":"1","name":"Mite Salary"}, {"id":"2","name":"Riky"}, {"id":"3","name":"Raj"} ]

,並在foreach循環我用

$x[$x]->age = implode(",",$y[$key]);下面是最後一個 ` 最後的代碼是:

foreach($x as $key => $value) 
    { 
    $x[$key]->av = implode(",",$y[$key]); 
    }` 
0
You'll do something like this. Lets say you have an array of Persons 

    $persons = [{"id":"1","name":"Mite Salary"}, {"id":"2","name":"Riky"}, {"id":"3","name":"Raj"}] 

    foreach ($persons as $person) { 
    $person['age'] = TableName::where("id","=", "$person->id")->get('age'); 
    } 
相關問題