프로그래밍 언어/PHP

PHP로 JSON 파일을 구문 분석 하는 방법

Rateye 2021. 6. 22. 10:52
728x90
반응형
질문 : PHP로 JSON 파일을 어떻게 구문 분석 할 수 있습니까?

PHP를 사용하여 JSON 파일을 구문 분석하려고했습니다. 하지만 지금은 붙어 있습니다.

이것은 내 JSON 파일의 내용입니다.

{
    "John": {
        "status":"Wait"
    },
    "Jennifer": {
        "status":"Active"
    },
    "James": {
        "status":"Active",
        "age":56,
        "count":10,
        "progress":0.0029857,
        "bad":0
    }
}

그리고 이것은 내가 지금까지 시도한 것입니다.

<?php

$string = file_get_contents("/home/michael/test.json");
$json_a = json_decode($string, true);

echo $json_a['John'][status];
echo $json_a['Jennifer'][status];

하지만 이름 (예 : 'John' , 'Jennifer' )과 사용 가능한 모든 키와 값 (예 : 'age' , 'count' )을 미리 모르기 때문에 foreach 루프를 만들어야한다고 생각합니다.

나는 이것에 대한 예를 고맙게 생각합니다.

답변

다차원 배열을 반복하려면 RecursiveArrayIterator를 사용할 수 있습니다.

$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";
    }
}

산출:

John:
status => Wait
Jennifer:
status => Active
James:
status => Active
age => 56
count => 10
progress => 0.0029857
bad => 0

코드 패드에서 실행

출처 : https://stackoverflow.com/questions/4343596/how-can-i-parse-a-json-file-with-php
728x90
반응형