json은 점점 인기를 얻고 있는 경량 데이터 교환 형식입니다. PHP는 웹 개발에 이상적인 뛰어난 서버측 프로그래밍 언어입니다. 따라서 json 객체를 PHP 배열로 변환하는 것은 매우 유용한 기술입니다. 이번 글에서는 json 객체를 PHP 배열로 변환하는 방법을 알아 보겠습니다.
PHP의 json_decode() 함수는 json 형식의 문자열을 PHP 변수(배열 또는 개체)로 변환하는 주요 방법입니다. 구문은 다음과 같습니다:
mixed json_decode(string $json[, bool $assoc = FALSE[, int $depth = 512[, int $options = 0]]])
매개변수 설명:
json
: json 문자열. json
:json 字符串。assoc
:一个布尔值,指示是否将 json 对象转换为关联数组。depth
:整数类型,指示最大深度。默认情况下,最大深度为 512,可以使用常量 JSON_DEPTH
定义。options
:选项,用于更细粒度地控制解码过程。可以使用以下常量的组合:常量 | 描述 |
---|---|
JSON_BIGINT_AS_STRING |
在 PHP 5.4.0 及更高版本中可用。将大于 PHP_INT_MAX 的整数转换为字符串。 |
JSON_INVALID_UTF8_IGNORE JSON_INVALID_UTF8_SUBSTITUTE
|
在 PHP 5.3.3 及更高版本中可用。JSON_INVALID_UTF8_IGNORE 此选项将忽略非法 UTF-8 字符。JSON_INVALID_UTF8_SUBSTITUTE 此选项将使用 Unicode 替换字符来替换非法 UTF-8 字符。 |
JSON_OBJECT_AS_ARRAY |
将 json 对象转换为关联数组。 |
JSON_THROW_ON_ERROR 在 PHP 7.3.0 及更高版本中可用。此常量用于自动抛出异常,而不是返回 FALSE 。 |
示例:
以下是 JSON 字符串:
{ "name": "John Doe", "age": 30, "city": "New York" }
使用 json_decode()
函数将其转换为关联数组:
$json = '{"name":"John Doe","age":30,"city":"New York"}'; $arr = json_decode($json, true); print_r($arr);
输出:
Array ( [name] => John Doe [age] => 30 [city] => New York )
JSON_UNESCAPED_UNICODE
assoc
: json 객체를 연관 배열로 변환할지 여부를 나타내는 부울 값입니다. 깊이
: 최대 깊이를 나타내는 정수 유형입니다. 기본적으로 최대 깊이는 512이며 상수 JSON_DEPTH
를 사용하여 정의할 수 있습니다. 옵션
: 디코딩 프로세스를 보다 세밀하게 제어하기 위한 옵션입니다. 다음 상수의 조합을 사용할 수 있습니다: 상수 | 설명 |
---|---|
JSON_BIGINT_AS_STRING |
PHP 5.4.0 이상에서 사용 가능합니다. PHP_INT_MAX 보다 큰 정수를 문자열로 변환합니다. |
JSON_INVALID_UTF8_IGNORE JSON_INVALID_UTF8_SUBSTITUTE
|
PHP 5.3.3 이상에서 사용 가능 . JSON_INVALID_UTF8_IGNORE 이 옵션은 잘못된 UTF-8 문자를 무시합니다. JSON_INVALID_UTF8_SUBSTITUTE 이 옵션은 잘못된 UTF-8 문자를 유니코드 대체 문자로 바꿉니다. |
JSON_OBJECT_AS_ARRAY |
json 객체를 연관 배열로 변환합니다. |
JSON_THROW_ON_ERROR PHP 7.3.0 이상에서 사용 가능합니다. 이 상수는 FALSE 를 반환하는 대신 자동으로 예외를 발생시키는 데 사용됩니다. |
<?php // 1. 定义 json 格式的字符串 $json = '{"name":"John Doe","age":30,"city":"New York"}'; // 2. 将 json 格式的字符串转换为 PHP 数组 $arr = json_decode($json, true); // 3. 输出转换后的数组 print_r($arr); ?>
json_decode() 함수는 이를 연관 배열로 변환합니다:
Array ( [name] => John Doe [age] => 30 [city] => New York )
rrreee
JSON_UNESCAPED_UNICODE
상수를 사용하여 ASCII가 아닌 문자가 이스케이프되도록 합니다. 🎜🎜🎜🎜Example🎜🎜🎜다음은 json 문자열을 PHP 배열로 변환하는 전체 예입니다: 🎜rrreee🎜Output: 🎜rrreee🎜🎜Conclusion🎜🎜🎜 위에서 언급했듯이 json_decode() 함수를 사용하여 json 객체를 변환할 수 있습니다. PHP 배열. 이 기술은 웹 개발에 매우 유용하며 AJAX 호출에서 JSON 데이터를 구문 분석하는 데 도움이 됩니다. 🎜위 내용은 json 객체를 PHP 배열로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!