현재 JSON은 가장 널리 사용되는 데이터 교환 형식 중 하나가 되었으며 주요 웹사이트의 거의 모든 API가 이를 지원합니다.
이 장에서는 PHP 언어를 사용하여 JSON 개체를 인코딩하고 디코딩하는 방법을 소개합니다.
버전 5.2부터 PHP는 기본적으로 json_encode() 및 json_decode() 함수를 제공하며 전자는 인코딩에 사용되고 후자는 디코딩에 사용됩니다.
함수 설명 변수
json_last_error 마지막으로 발생한 오류를 반환합니다.
1.PHP json_인코드( )는 JSON 인코딩 변수에 사용됩니다. 이 함수는 성공적으로 실행되면 JSON 데이터를 반환하고, 그렇지 않으면 FALSE를 반환합니다.
구문
string json_encode ( $value [, $options = 0 ] )
value: 인코딩할 값입니다. 이 함수는 UTF-8로 인코딩된 데이터에만 유효합니다.
옵션: 다음 상수로 구성된 바이너리 마스크: JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT,
JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT
Let' 먼저 배열 변환을 살펴보겠습니다. 예:
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); echo json_encode($arr);
결과는
{"a":1,"b":2,"c":3,"d":4,"e":5}
입니다. 객체 변환의 또 다른 예를 살펴보겠습니다.
$obj->body = 'another post'; $obj->id = 21; $obj->approved = true; $obj->favorite_count = 1; $obj->status = NULL; echo json_encode($obj);
결과는
{ "body":"another post", "id":21, "approved":true, "favorite_count":1, "status":null }
입니다. 2. json_decode()
PHP json_decode() 함수는 JSON 형식의 문자열을 디코딩하여 PHP 변수로 변환하는 데 사용됩니다.
구문
매개변수
json_string: 디코딩할 JSON 문자열, UTF-8로 인코딩된 데이터여야 합니다.
assoc: 이 매개변수가 TRUE이면 배열이 반환되고, FALSE이면 개체가 반환됩니다.
깊이: 재귀 깊이를 지정하는 정수형 매개변수
옵션: 바이너리 마스크, 현재 JSON_BIGINT_AS_STRING만 지원됩니다.
예제다음 예는 JSON 데이터를 디코딩하는 방법을 보여줍니다.