PHP와 JSON
PHP와 JSON
PHP는 서버 측에서 실행되는 스크립트 언어입니다.
PHP는 개발자가 동적으로 웹 페이지를 쉽고 빠르게 만들 수 있도록 도와줍니다.
이때 서버로부터 읽어 들이는 데이터로 JSON 데이터가 많이 사용됩니다.
따라서 PHP를 사용하여 JSON 데이터를 다뤄야 할 필요성이 생깁니다.
PHP는 이러한 JSON 데이터를 다루기 위해 다음과 같은 메소드를 제공하고 있습니다.
1. json_encode()
2. json_decode()
json_encode() 함수
PHP의 json_encode() 함수는 전달받은 값을 JSON 형식의 문자열로 변환하여 반환합니다.
문법
string json_encode(mixed $value)
$value에는 변환할 값을 전달하며, 이 값의 타입은 resource 타입을 제외한 PHP의 모든 타입이 올 수 있습니다.
이 함수는 UTF-8로 인코딩된 값을 인수로 전달해야만 정상적으로 동작합니다.
다음 예제는 json_encode() 함수를 이용하여 PHP 배열을 문자열로 변환하는 예제입니다.
위의 예제처럼 한글은 UTF-8로 인코딩되어, 유니코드 코드 포인트(unicode code point) 값으로 저장됩니다.
json_decode() 함수
PHP의 json_decode() 함수는 전달받은 JSON 형식의 문자열을 PHP 변수로 변환합니다.
문법
mixed json_decode(string $json)
$json에는 변환할 문자열을 전달합니다.
이때 해당 문자열은 반드시 유효한 JSON 형식의 문자열이어야 합니다.
만약 JSON 형식에 맞지 않는 문자열을 전달하면, json_decode() 함수는 null 값을 반환할 것입니다.
또한, 두 번째 인수로 true를 전달하면, 결과를 PHP 객체가 아닌 연관 배열로 반환해 줍니다.
다음 예제는 json_decode() 함수를 이용하여 JSON 형식의 문자열을 PHP 배열로 변환하는 예제입니다.