2016-03-24 10 views
0

Können Sie aktualisieren und eine Laravel Sammlung speichern, wenn eine where-Anweisung zBLaravel Sammlung Aktualisierungswerte Artikel mit ‚wo‘

$collection = collect([ 
    ['product' => 'Desk', 'price' => 200], 
    ['product' => 'Chair', 'price' => 100], 
    ['product' => 'Bookcase', 'price' => 150], 
    ['product' => 'Door', 'price' => 100], 
]); 

Wie kann ich alle Preise ändern, die 100 bis 200 oder Produkt wie ‚Desk sind 'zu' Schrank '?

Antwort

0

Ich glaube nicht, dass Sie es tun können, indem Sie nur wo, wie wo für das Filtern und gibt Elemente basierend auf Ihrem Prädikat. Warum nicht eine normale array_map() Funktion verwenden?

$new_collection = array_map(function($item) { 

    if($item['price'] == 100) { 
    $item['price'] = 200; 
    } 

    return $item; 

}, $collection); 
+0

Laravel hat eine Auflistung map function.so das ist der einzige Weg? '$ new_collection = $ collection-> map (Funktion ($ item, $ key) {if ($ item-> price == 100) {$ item-> price = 200;} return ['product' => $ item-> product, 'price' => $ item-> price];}); ' –

Verwandte Themen