JSON 소개
JSON(JavaScript Object Notation)은 경량 데이터 교환 형식입니다. ECMAScript의 하위 집합을 기반으로 합니다. JSON은 완전히 언어 독립적인 텍스트 형식을 사용하지만 C 언어 계열(C, C, C#, Java, JavaScript, Perl, Python 등 포함)과 유사한 규칙도 사용합니다. 이러한 속성은 JSON을 이상적인 데이터 교환 언어로 만듭니다. 사람이 읽고 쓰기가 쉽고 기계가 구문 분석하고 생성하기도 쉽습니다(일반적으로 네트워크 전송 속도를 높이는 데 사용됨).
Json은 매우 간단하고 이해하기 쉬운 데이터 형식입니다. json에 대한 규정은 다음과 같습니다.
1) 병렬 데이터는 쉼표(", ")로 구분됩니다.
2) 매핑은 콜론(": ")으로 표시됩니다.
3) 병렬 데이터의 집합(배열)은 대괄호("[]")로 표시됩니다.
4) 매핑된 컬렉션(객체)은 중괄호("{}")로 표시됩니다.
JSON에는 배열과 객체라는 두 가지 구조가 있습니다. 배열은 정렬된 데이터 컬렉션을 나타내고 객체는 정렬되지 않은 데이터 컬렉션을 나타냅니다.
아래 예를 살펴보세요.
$arr = array(111,'aaa','bbb'); $arr1 = array( 'a' => 'aaa', 'b' => 222 ); $arr2 = array( 'a' => 'aaa', 'other' => array( 'bbb',1111 ) ); echo json_encode($arr); //[111,"aaa","bbb"] echo json_encode($arr1); //{"a":"aaa","b":222} echo json_encode($arr2); //{"a":"aaa","other":["bbb",1111]}
위에서 알 수 있듯이 javascript는 연관 배열을 지원하지 않기 때문에 json_encode()는 인덱스 배열만 배열 형식으로 변환하고 연관 배열은 객체 형식으로 변환합니다.
PHP의 json 지원 정보:
json_encode는 UTF-8로 인코딩된 데이터만 지원합니다.
json_decode는 항상 하나의 PHP 객체만 반영합니다. 두 번째 매개변수를 true로 설정하면 배열이 반환될 수 있습니다.
$json = '{"a":"aaa","other":["bbb",1111]}'; print_r(json_decode($json)); print_r(json_decode($json, true));
위 내용은 에디터가 소개한 두 가지 JSON 구조의 객체와 배열에 대한 이해입니다. 궁금한 점이 있으시면 메시지를 남겨주시면 에디터가 답변해 드리겠습니다. 시간. 또한 Script House 웹사이트를 지원해 주시는 모든 분들께 감사의 말씀을 전하고 싶습니다!