Comment lire et parcourir un fichier JSON en PHP ?
Réponses rédigées par Antoine
Dernière mise à jour : 2019-01-18 13:31:04
Question
J’essaie d'analyser un fichier JSON avec PHP, dont voici le contenu :
{
"Bob": {
"status":"Présent"
},
"Pierre": {
"status":"Absent"
},
"James": {
"status":"Absent",
"age":56
}
}
Mon soucis c'est que je ne connais pas les noms (comme 'Bob' , 'Pierre' ) et toutes les clés et valeurs disponibles (comme 'status' , 'age' ) à l'avance.
Réponse
Pour parcourir un tableau JSON multidimensionnel, vous pouvez utiliser RecursiveArrayIterator.
<?php
$json = <<< JSON
{
"Bob": {
"status":"Présent"
},
"Pierre": {
"status":"Absent"
},
"James": {
"status":"Absent",
"age":56
}
}
JSON;
$jsonIterator = new RecursiveIteratorIterator(
new RecursiveArrayIterator(json_decode($json, TRUE)),
RecursiveIteratorIterator::SELF_FIRST);
foreach ($jsonIterator as $key => $val) {
if(is_array($val)) {
echo "$key:\n";
} else {
echo "$key => $val\n";
}
}
?>