> 백엔드 개발 > PHP 튜토리얼 > `json_encode`를 사용하여 PHP 배열을 JSON 배열로 어떻게 변환합니까?

`json_encode`를 사용하여 PHP 배열을 JSON 배열로 어떻게 변환합니까?

Patricia Arquette
풀어 주다: 2024-12-03 13:12:12
원래의
604명이 탐색했습니다.

How Do I Convert a PHP Array to a JSON Array Using `json_encode`?

json_encode를 사용하여 PHP 배열을 JSON 배열로 변환

PHP 배열로 작업할 때 PHP 배열을 사용할 때 JSON에서 어떻게 표현되는지 이해하는 것이 중요합니다. json_encode. 기본적으로 PHP 배열은 키가 순차적이지 않은 경우 JSON 개체로 인코딩됩니다.

다음 PHP 배열을 고려하세요.

$input = [
    [
        "id" => 0,
        "name" => "name1",
        "short_name" => "n1"
    ],
    [
        "id" => 2,
        "name" => "name2",
        "short_name" => "n2"
    ]
];
로그인 후 복사

json_encode를 사용하여 이 배열을 인코딩하려고 하면 결과는 다음과 같습니다. 다음 JSON 객체여야 합니다.

{
    "0": {
        "id": 0,
        "name": "name1",
        "short_name": "n1"
    },
    "2": {
        "id": 2,
        "name": "name2",
        "short_name": "n2"
    }
}
로그인 후 복사

이 동작은 배열 키가 비순차적(0과 2)이기 때문에 발생합니다. 배열을 JSON 배열로 인코딩하려면 모든 키가 순차적이어야 합니다.

해결책: array_values로 다시 색인화

배열을 순차 형식으로 변환하려면 array_values를 사용하세요. 함수:

$output = json_encode(array_values($input));
로그인 후 복사

이것은 0부터 시작하여 배열을 다시 색인화하여 순차적임을 보장합니다. 열쇠. 결과 JSON은 배열이 됩니다.

[
    {
        "id": 0,
        "name": "name1",
        "short_name": "n1"
    },
    {
        "id": 2,
        "name": "name2",
        "short_name": "n2"
    }
]
로그인 후 복사

JSON의 PHP 배열 표현을 이해하고 순차적 재인덱싱에 array_values를 사용하면 json_encode를 사용하여 PHP 배열을 JSON 배열로 성공적으로 인코딩할 수 있습니다.

위 내용은 `json_encode`를 사용하여 PHP 배열을 JSON 배열로 어떻게 변환합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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