2016-04-23 14 views
17

Ich muss den Wert meines Anforderungsparameters wie folgt ändern.So ändern Sie den Wert eines Anforderungsparameters in Laravel

$request->name = "My Value!" 

Ich benutze diesen Code, funktioniert aber nicht.

$request->offsetSet('img', $img); 
+0

Mögliches Duplikat von [Laravel Eingabewert ändern] (http://stackoverflow.com/questions/23073633/laravel-change-input-value) - die Antwort ist im Kommentar zur obersten Frage. –

Antwort

31

Versuchen Sie:

$requestData = $request->all(); 
$requestData['img'] = $img; 

Ein anderer Weg, es zu tun:

$request->merge(['img' => $img]); 

Dank @JoelHinz dafür.

Wenn Sie hinzufügen möchten oder verschachtelte Daten zu überschreiben:

$data['some']['thing'] = 'value'; 
$request->merge($data); 

Wenn Sie nicht Request $request Objekt injizieren, können Sie über die globalen request() Helfer oder \Request:: Fassade anstelle von $request

+0

Fehler: Aufruf zu undefinierter Methode Illuminate \ Http \ Request :: put() –

+1

Ich habe meine Antwort aktualisiert. –

+0

put() ist eine Sammelmethode, $ request-> all() gibt ein Array zurück. –

2

, wenn Sie benötigen passen Sie die Anfrage
            Daten $ = $ request-> al l();
können Sie den Namen des Feldes übergeben und den Wert
            $ data [ 'product_ref_code'] = 1650;
und schließlich die neue Anforderung
            $ reicht = Dieses Produkt passieren :: ($ data) schaffen;

Verwandte Themen