JSON
PHP Manual

Предопределенные константы

Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение было подгружено во время выполнения.

The following constants indicate the type of error returned by json_last_error(). They are all available as of PHP 5.3.0.

JSON_ERROR_NONE (integer)
No error has occurred.
JSON_ERROR_DEPTH (integer)
The maximum stack depth has been exceeded.
JSON_ERROR_CTRL_CHAR (integer)
Control character error, possibly incorrectly encoded.
JSON_ERROR_SYNTAX (integer)
Syntax error.
JSON_ERROR_UTF8 (integer)
Malformed UTF-8 characters, possibly incorrectly encoded. This constant is available as of PHP 5.3.1.

The following constants can be combined to form options for json_encode(). They are all available as of PHP 5.3.0.

JSON_HEX_TAG (integer)
All < and > are converted to \u003C and \u003E.
JSON_HEX_AMP (integer)
All &s are converted to \u0026.
JSON_HEX_APOS (integer)
All ' are converted to \u0027.
JSON_HEX_QUOT (integer)
All " are converted to \u0022.
JSON_FORCE_OBJECT (integer)
Outputs an object rather than an array when a non-associative array is used. Especially useful when the recipient of the output is expecting an object and the array is empty.

JSON
PHP Manual