JSON 미리 정의된 상수
아래 상수는 이 확장에 의해 정의되며 확장이 PHP로 컴파일되거나 런타임에 동적으로 로드된 경우에만 사용할 수 있습니다.
다음 상수는 json_last_error()에 의해 반환되거나 JsonException의 code
로 저장된 오류 유형을 나타냅니다.
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 배열로 디코딩합니다. 이 옵션은 두 번째 매개변수가
true
인 json_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_ERROR
는JSON_THROW_ON_ERROR
보다 우선합니다. PHP 7.3.0부터 사용 가능합니다.