2017-10-18 9 views
2

Je dois analyser ce jeu de données j'ai déjà mais j'ai essayé plusieurs façons, mais cela ne fonctionne pas.Laravel Dataset Erreur d'analyse

{"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"} 

J'ai essayé, mais celui-ci dit que cette erreur

(1/1) ErrorException Essayer d'obtenir la propriété de non-objet

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

J'ai aussi essayé celui-ci

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

(1/1) ErrorException Chaîne illégale offset 'id '

J'utilise Laravel 5.4

Répondre

1

Puisque les données provient de la demande, un JSON et non une collection ou un objet. Donc, vous devez faire quelque chose comme ceci:

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

Cela fonctionne merci @alexey –

1

Pour récupérer la charge utile JSON dans votre contrôleur, utilisez:

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

au lieu de

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

Vous obtiendrez 'Essayer d'obtenir la propriété de non-objet' avec ce code. Vous devez d'abord le décoder, puis obtenir l'ID. –

+1

@AlexeyMezenin Merci! J'ai mis à jour ma réponse! –

1

Pour utiliser comme tableau comme $details['id'] essayez ceci:

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