The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.
The following constants indicate the type of error returned by json_last_error().
JSON_ERROR_NONE
(integer)
JSON_ERROR_DEPTH
(integer)
JSON_ERROR_STATE_MISMATCH
(integer)
JSON_ERROR_CTRL_CHAR
(integer)
JSON_ERROR_SYNTAX
(integer)
JSON_ERROR_UTF8
(integer)
JSON_ERROR_RECURSION
(integer)
JSON_PARTIAL_OUTPUT_ON_ERROR
option was
given, NULL
will be encoded in the place of the recursive reference.
Available since PHP 5.5.0.
JSON_ERROR_INF_OR_NAN
(integer)
NAN
or INF
.
If the JSON_PARTIAL_OUTPUT_ON_ERROR
option was
given, 0 will be encoded in the place of these
special numbers.
Available since PHP 5.5.0.
JSON_ERROR_UNSUPPORTED_TYPE
(integer)
JSON_PARTIAL_OUTPUT_ON_ERROR
option was
given, NULL
will be encoded in the place of the unsupported value.
Available since PHP 5.5.0.
JSON_ERROR_INVALID_PROPERTY_NAME
(integer)
JSON_ERROR_UTF16
(integer)
The following constants can be combined to form options for json_decode().
JSON_BIGINT_AS_STRING
(integer)
JSON_OBJECT_AS_ARRAY
(integer)
TRUE
.
Available since PHP 5.4.0.
The following constants can be combined to form options for json_encode().
JSON_HEX_TAG
(integer)
JSON_HEX_AMP
(integer)
JSON_HEX_APOS
(integer)
JSON_HEX_QUOT
(integer)
JSON_FORCE_OBJECT
(integer)
JSON_NUMERIC_CHECK
(integer)
JSON_PRETTY_PRINT
(integer)
JSON_UNESCAPED_SLASHES
(integer)
JSON_UNESCAPED_UNICODE
(integer)
JSON_PARTIAL_OUTPUT_ON_ERROR
(integer)
JSON_PRESERVE_ZERO_FRACTION
(integer)
JSON_UNESCAPED_LINE_TERMINATORS
(integer)
JSON_UNESCAPED_UNICODE
is supplied. It uses the same
behaviour as it was before PHP 7.1 without this constant.
Available since PHP 7.1.0.
The following constants can be combined to form options for json_decode() and json_encode().
JSON_THROW_ON_ERROR
(integer)
JSON_PARTIAL_OUTPUT_ON_ERROR
takes precedence over
JSON_THROW_ON_ERROR
. Available since PHP 7.3.0.