PHP에서 JSON데이터를 json_decode() 사용해서 파싱하기

안녕하세요.

이번에 소개할 내용은 PHP에서 JSON데이터를 json_decode() 사용해서 파싱하기

웹사이트를 개발을 하시다보시면 JSON 데이터를 많이 이용하시는것을 아실것 입니다.

API를 이용해도 데이터를 주고 받을경우 JSON형태로 주고 받기때문에

JSON데이터를 받아도 PHP에서 사용할수있게 파싱을 해주는 작업이 필요 합니다.

이번시간에는 JSON데이터를 PHP의 json_decode()를 이용해서 간단히 파싱하는 방법을 알아보겠습니다.

우선 간단하게 예제를 이용해서 어떻게 변환이 되는지 해보도록 하겠습니다.

그럼 우선 Visual Studio Code(비주얼 스튜디오 코드)를 실행해 주시기 바랍니다.

실행을 하셨으면 파일명을 php_json_decode.php로 추가를 해주시기 바랍니다.

image

그럼 1차원적인 JSON데이터를 Json_decode를 이용해서 파싱을 해보도록 하겠습니다.

아래의 코드를 작성해 주시기 바랍니다.

1
2
3
4
5
<?php
$jsonData = "{\"name\":\"AkibaTV\",\"age\":20,\"birth\":\"1900\/01\/01\",\"date\":\"2020-06-16 23:27:11\"}";

print_r(json_decode($jsonData));
?>

image

작성을 하셨으면 라즈베리파이 웹서버 또는 개인서버, 호스팅서버에 업로드를 해주시기 바랍니다.

저는 라즈베리파이에 웹서버를 구축을 해두었기때문에 라즈베리파이 웹서버를 이용하도록 하겠습니다.

image

서버에 파일이 올라간것을 확인 했으므로 실행을 해보도록 하겠습니다.

웹브라우저를 실행하시고 http://각웹서버URL/php_json_decode.php 를 실행해 주세요.

image

JSON형태의 데이터가 Array형태의 오브젝트로 변환된것을 확인 하실수 있습니다.

변환된 데이터는 PHP에서 가공해서 사용을 하실수 있습니다.

그러면 이번에는 JSON안에 또다른 배열 데이터가 존재할 경우에 대해서 해보도록 하겠습니다.

아까 만들어둔 파일에서 추가로 작성을 하도록 하겠습니다.

아래의 소스코드를 작성해 주시기 바랍니다.

1
2
3
4
5
<?php
$jsonData = "{\"name\":\"AkibaTV\",\"age\":20,\"birth\":\"1900\/01\/01\",\"date\":\"2020-06-16 23:27:11\",\"address\":{\"zipcode\":\"123-1234\",\"address1\":\"abcdefg\",\"address2\":\"hijklmn\"}}";

print_r(json_decode($jsonData));
?>

image

작성을 하셨으면 서버에 올려주시고 실행을 해주시기 바랍니다.

image

위와같이 JSON데이터가 Object형태로 변환이 된것을 보실수 있습니다.