JSON 미리 정의된 상수

아래 상수는 이 확장에 의해 정의되며 확장이 PHP로 컴파일되거나 런타임에 동적으로 로드된 경우에만 사용할 수 있습니다.

다음 상수는 json_last_error()에 의해 반환되거나 JsonExceptioncode로 저장된 오류 유형을 나타냅니다.

JSON_ERROR_NONE (int)
오류가 발생하지 않았습니다.
JSON_ERROR_DEPTH (int)
최대 스택 깊이를 초과했습니다.
JSON_ERROR_STATE_MISMATCH (int)
언더플로 또는 모드 불일치로 발생합니다.
JSON_ERROR_CTRL_CHAR (int)
제어 문자 오류, 잘못 인코딩되었을 수 있습니다.
JSON_ERROR_SYNTAX (int)
구문 오류입니다.
JSON_ERROR_UTF8 (int)
잘못 인코딩된 UTF-8 문자 형식이 잘못되었을 수 있습니다.
JSON_ERROR_RECURSION (int)
json_encode()에 전달된 객체 또는 배열은 재귀 참조를 포함하며 인코딩할 수 없습니다. JSON_PARTIAL_OUTPUT_ON_ERROR 옵션이 제공된 경우 재귀 참조 대신 null이 인코딩됩니다.
JSON_ERROR_INF_OR_NAN (int)
json_encode()에 전달된 값에는 NAN 또는 INF가 포함됩니다. JSON_PARTIAL_OUTPUT_ON_ERROR 옵션이 제공된 경우 이러한 특수 숫자 대신 0이 인코딩됩니다.
JSON_ERROR_UNSUPPORTED_TYPE (int)
json_encode()에 지원되지 않는 유형의 값(예: resource)이 제공되었습니다. JSON_PARTIAL_OUTPUT_ON_ERROR 옵션이 제공된 경우 지원되지 않는 값 대신 null이 인코딩됩니다.
JSON_ERROR_INVALID_PROPERTY_NAME (int)
\u0000 문자로 시작하는 키는 JSON 객체를 PHP 객체로 디코딩할 때 json_decode()에 전달된 문자열에 있었습니다.
JSON_ERROR_UTF16 (int)
json_decode()에 전달된 JSON 문자열에 포함된 유니코드 이스케이프의 단일 짝을 이루지 않은 UTF-16 대리.

다음 상수를 결합하여 json_decode()에 대한 옵션을 형성할 수 있습니다.

JSON_BIGINT_AS_STRING (int)
큰 정수를 원래 문자열 값으로 디코딩합니다.
JSON_OBJECT_AS_ARRAY (int)
JSON 객체를 PHP 배열로 디코딩합니다. 이 옵션은 두 번째 매개변수가 truejson_decode()를 호출하여 자동으로 추가할 수 있습니다.

다음 상수를 결합하여 json_encode()에 대한 옵션을 형성할 수 있습니다.

JSON_HEX_TAG (int)
모든 < 및 >는 \u003C 및 \u003E로 변환됩니다.
JSON_HEX_AMP (int)
모든 &는 \u0026으로 변환됩니다.
JSON_HEX_APOS (int)
모두 '는 \u0027로 변환됩니다.
JSON_HEX_QUOT (int)
모든 "는 \u0022로 변환됩니다.
JSON_FORCE_OBJECT (int)
비연관 배열을 사용하는 경우 배열이 아닌 객체를 출력합니다. 출력 수신자가 개체를 예상하고 배열이 비어 있을 때 특히 유용합니다.
JSON_NUMERIC_CHECK (int)
숫자 문자열을 숫자로 인코딩합니다.
JSON_PRETTY_PRINT (int)
반환된 데이터에 공백을 사용하여 형식을 지정합니다.
JSON_UNESCAPED_SLASHES (int)
Don't escape /.
JSON_UNESCAPED_UNICODE (int)
멀티바이트 유니코드 문자를 문자 그대로 인코딩합니다(기본값은 \uXXXX로 이스케이프).
JSON_PARTIAL_OUTPUT_ON_ERROR (int)
실패하는 대신 인코딩할 수 없는 값으로 대체하십시오.
JSON_PRESERVE_ZERO_FRACTION (int)
float 값이 항상 float 값으로 인코딩되도록 합니다.
JSON_UNESCAPED_LINE_TERMINATORS (int)
JSON_UNESCAPED_UNICODE가 제공되면 줄 종결자가 이스케이프 처리되지 않은 상태로 유지됩니다. 이 상수가 없는 PHP 7.1 이전과 동일한 동작을 사용합니다. PHP 7.1.0부터 사용 가능합니다.

다음 상수를 결합하여 json_decode()json_encode()에 대한 옵션을 형성할 수 있습니다.

JSON_INVALID_UTF8_IGNORE (int)
잘못된 UTF-8 문자를 무시합니다. PHP 7.2.0부터 사용 가능합니다.
JSON_INVALID_UTF8_SUBSTITUTE (int)
유효하지 않은 UTF-8 문자를 \0xfffd(유니코드 문자 'REPLACEMENT CHARACTER')로 변환 PHP 7.2.0부터 사용할 수 있습니다.
JSON_THROW_ON_ERROR (int)
json_last_error()json_last_error_msg()로 검색된 전역 오류 상태를 설정하는 대신 오류가 발생하면 JsonException을 throw합니다. JSON_PARTIAL_OUTPUT_ON_ERRORJSON_THROW_ON_ERROR보다 우선합니다. PHP 7.3.0부터 사용 가능합니다.