> 백엔드 개발 > PHP 문제 > json을 객체 배열 PHP로 변환

json을 객체 배열 PHP로 변환

WBOY
풀어 주다: 2023-05-19 13:50:37
원래의
729명이 탐색했습니다.

웹 애플리케이션을 개발하는 과정에서 데이터를 처리해야 하는 경우가 종종 있습니다. 단순히 문자열을 처리하는 것만으로는 충분하지 않습니다. 일반적으로 서로 다른 프로그래밍 언어 간의 데이터 변환이 필요합니다. PHP에서는 JSON 문자열을 객체 배열로 변환해야 합니다. 다음은 JSON을 PHP 개체 배열로 변환하는 방법에 대한 몇 가지 지침입니다.

JSON(JavaScript Object Notation)은 읽고 쓰기 쉬울 뿐만 아니라 기계가 쉽게 구문 분석하고 생성할 수 있는 경량 데이터 교환 형식입니다. JSON은 기본 데이터 유형으로 구성되며 가장 일반적인 유형에는 문자열, 숫자, 배열, 부울 값, 개체 및 null 값이 포함됩니다. JSON은 클라이언트와 서버 간의 표준 데이터 전송 형식이 되었습니다.

PHP에는 JSON 문자열을 배열이나 객체로 쉽게 변환할 수 있는 JSON 처리 기능이 내장되어 있습니다. PHP에서 가장 일반적으로 사용되는 함수는 json_decode() 함수입니다. 이 함수는 JSON 문자열을 PHP 변수(배열 또는 객체)로 변환합니다. json_decode() 함수는 두 개의 매개변수, 즉 변환할 JSON 문자열과 반환된 데이터 유형(기본값은 객체)을 사용합니다. 다음은 간단한 예입니다.

$json_string = '{"name":"John","age":30,"city":"New York"}';
$obj = json_decode($json_string);
print_r($obj);
로그인 후 복사

출력:

stdClass Object 
( 
    [name] => John 
    [age] => 30 
    [city] => New York 
)
로그인 후 복사

기본적으로 json_decode() 함수는 객체를 반환합니다. 배열을 반환하도록 변경할 수도 있습니다.

$json_string = '{"name":"John","age":30,"city":"New York"}';
$arr = json_decode($json_string, true);
print_r($arr);
로그인 후 복사

출력:

Array 
( 
    [name] => John 
    [age] => 30 
    [city] => New York 
)
로그인 후 복사

위 예에서는 두 번째 매개변수를 사용하여 반환 유형을 배열로 지정했습니다. 이 함수는 JSON 문자열을 구문 분석할 때 좀 더 복잡한 규칙을 따릅니다. 자세한 내용은 공식 문서를 확인하세요.

여러 JSON 개체가 포함된 JSON 문자열을 처리하려면 json_decode() 함수를 호출할 때 추가 매개 변수 JSON_BIGINT_AS_STRING을 추가할 수 있습니다. 이렇게 하면 핸들러가 JSON 문자열의 큰 숫자 값을 부동 소수점 숫자로 변환하지 않게 됩니다. 이는 하나 이상의 CUIDS(고객 ID)가 포함된 로그 이벤트를 처리할 때 특히 유용합니다. 이러한 ID는 고유하게 유지되어야 하기 때문입니다.

예는 다음과 같습니다.

$json_string = '[{"name":"John","age":30,"city":"New York"},{"name":"Mike","age":35,"city":"Chicago"}]';
$arr = json_decode($json_string, true, 512, JSON_BIGINT_AS_STRING);
print_r($arr);
로그인 후 복사

출력:

Array 
( 
    [0] => Array 
        ( 
            [name] => John 
            [age] => 30 
            [city] => New York 
        ) 

    [1] => Array 
        ( 
            [name] => Mike 
            [age] => 35 
            [city] => Chicago 
        ) 

)
로그인 후 복사

위의 예에서는 JSON 문자열에 큰 정수가 있을 수 있다는 것을 알고 있으므로 JSON_BIGINT_AS_STRING 매개변수를 전달했습니다. 이 상황을 처리하고 이러한 숫자가 부동 소수점 숫자로 변환되지 않도록 하는 것이 중요합니다.

JSON은 프런트엔드 및 백엔드 데이터 전송에서 매우 일반적인 형식이므로 JSON을 다루는 방법을 배우는 것이 매우 중요합니다. PHP에서는 내장된 json_decode() 함수를 사용하여 JSON 문자열을 객체 배열로 쉽게 변환할 수 있습니다. 이 함수와 관련 매개변수를 적절하게 사용할 수 있다면 PHP에서 JSON 데이터를 쉽게 처리하고 데이터를 빠르고 효율적이며 안전하게 처리할 수 있습니다.

위 내용은 json을 객체 배열 PHP로 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿