Извините, если это было покрыто, но я посмотрел и не могу найти ответ, который работает.Декодирование вложенных JSON в PHP
У меня есть следующие JSON (укороченный для ясности):
[{
"header": {
"msg_type": "0001"
},
"body": {
"event_type": "ARRIVAL",
"train_id": "384T22MJ20"
}
},{
"header": {
"msg_type": "0003"
},
"body": {
"event_type": "DEPARTURE",
"train_id": "382W22MJ19"
}
}]
Теперь я знаю, что могу использовать json_decode, чтобы создать массив PHP, но не зная много о PHP я не знаю, как получить его делать то, что я хочу. Мне нужно иметь доступ к значению из каждого массива. Например, мне нужно будет извлечь train_id из каждого массива. На данный момент у меня есть это:
$file = "sampleData.json";
$source = file_get_contents($file);
$data = json_decode($source);
$msgbdy = $data->body;
foreach($msgbdy as $body){
$trainID = $body->train_id;
}
Я знаю, что это неправильно, но я не уверен, если я нахожусь на правильном пути или нет.
Заранее спасибо.
Спасибо всем, воспользовавшись комбинацией ответов для достижения того, что мне нужно. Пока не могу проголосовать. – sjmaceyful