Page 1 sur 1

Aide pour un foreach dans un json avec une "sous-catégorie" dynamique

Posté : 30 juin 2016, 23:41
par LDN
Hello, voici la structure de mon json :

Code : Tout sélectionner

{ "History": [ { "12345678912345678": { "option1": [ { "data1": "foo", "data2": "bar", "data3": "foo" }, { "data1": "bar", "data2": "foo", "data3": "bar" }, { "data1": "foo", "data2": "bar", "data3": "foo" }, { "data1": "bar", "data2": "foo", "data3": "bar" } ], "option2": [ { "data1": "foo", "data2": "bar", "data3": "foo" }, { "data1": "bar", "data2": "foo", "data3": "bar" } ] } } ] }
J'ai besoin d'exploiter les données dans "option1" avec un foreach dans le but
de générer un tableau, mais le champ "12345678912345678" du json est une
valeur numérique qui change constamment.

J'ai donc bêtement essayer plusieurs solutions autour du code suivant, mais
sans résultat :

Code : Tout sélectionner

<?php $timeout = stream_context_create(array('http' => array('timeout' => 5))); $json_source_history = file_get_contents('URL/History?id=' . $_GET['id'], 0, $timeout); $history = json_decode($json_source_history); foreach($history->History->$_GET['id']->option1 as $history_data) { ... ... ... } ?>
Auriez-vous une solution ?
Par avance, merci !

Re: Aide pour un foreach dans un json avec une "sous-catégorie" dynamique

Posté : 01 juil. 2016, 15:42
par soft1ne
Salut,

Voici comment je procèderai:

Code : Tout sélectionner

<?php $timeout = stream_context_create(array('http' => array('timeout' => 5))); $json_source_history = file_get_contents('URL/History?id=' . $_GET['id'], 0, $timeout); $history = json_decode($json_source_history); $id=(array_keys(get_object_vars($history->History[0]))[0]); foreach($history->History[0]->$id->option1 as $history_data) { ... ... ... } ?>
Bonne soirée

Re: Aide pour un foreach dans un json avec une "sous-catégorie" dynamique

Posté : 01 juil. 2016, 19:52
par LDN
Hello,

Fonctionne parfaitement ! Un grand merci :D