2017-10-18 3 views
2

Ich muss dieses Dataset bereits analysieren, aber ich habe mehrere Möglichkeiten ausprobiert, aber es funktioniert nicht.Laravel Dataset Parsing Fehler

{"id":2,"area_id":"1","payment_term_id":"1","payment_type_id":"1","trade_channel_id":"1","salesman_id":1,"customer_name":"xxx","contact_number":"1231212","fax_number":"1231232","home_address":"asd","delivery_address":"dasd","email_address":"[email protected]","created_by":"4","updated_by":"4","is_active":"1","created_at":"2017-10-17 06:02:59","updated_at":"2017-10-17 06:13:22"} 

versuchte ich dieses aber Dieser Fehler besagt, dass

(1/1) Error Der Versuch, Eigentum von Nicht-Objekt zu erhalten

$details = $request->get('details'); 
return $details->id; 

Ich habe auch versucht, diesen einen

$details = $request->get('details'); 
return $details['id']; 

(1/1) ErrorException Ungültige Zeichenfolge Offset 'ID '

Ich verwende Laravel 5.4

Antwort

1

Da die Daten aus der Anforderung kommt, ist es ein JSON und nicht eine Sammlung oder ein Objekt. Sie müssen also, um so etwas tun:

return json_decode($request->details)->id; 
+1

Dies funktioniert dank @alexey –

1

Um die JSON Nutzlast in Ihrem Controller abrufen, verwenden Sie:

$details = json_decode($request->details)->id); 
dd($details); 

statt

$details = $request->get('details'); 
return $details['id']; 
+1

Sie erhalten 'versuchen, Eigenschaft von Nicht-Objekt zu bekommen 'mit diesem Code. Sie müssen es zuerst dekodieren und dann ID bekommen. –

+1

@AlexeyMezenin Danke! Ich habe meine Antwort aktualisiert! –

1

als Array verwenden wie $details['id'] versuchen Sie dies:

$details = json_decode($request->details, true); 
echo $details['id'];