Предопределенные константы
Вернуться к: JSON
Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение было подгружено во время выполнения.
Следующие константы указывают на тип ошибки, возвращенной функцией json_last_error().
-
JSON_ERROR_NONE
(integer) - Не произошло никаких ошибок. Доступна начиная с PHP 5.3.0.
-
JSON_ERROR_DEPTH
(integer) - Была превышена максимальная глубина стека. Доступна начиная с PHP 5.3.0.
-
JSON_ERROR_STATE_MISMATCH
(integer) - Неверный или поврежденный JSON. Доступна начиная с PHP 5.3.0.
-
JSON_ERROR_CTRL_CHAR
(integer) - Ошибка управляющих символов, вероятно из-за неверного кодирования. Доступна начиная с PHP 5.3.0.
-
JSON_ERROR_SYNTAX
(integer) - Синтаксическая ошибка. Доступна начиная с PHP 5.3.0.
-
JSON_ERROR_UTF8
(integer) - Поврежденные символы UTF-8, вероятно, из-за неверного кодирования. Эта константа стала доступна начиная с PHP 5.3.3.
-
JSON_ERROR_RECURSION
(integer) -
Объект или массив, переданный в функцию json_encode() включает рекурсивные ссылки и не может быть закодирован. Если была передана опция
JSON_PARTIAL_OUTPUT_ON_ERROR
, то на месте рекурсивных ссылок будет выведенNULL
.Эта константа стала доступна начиная с PHP 5.5.0.
-
JSON_ERROR_INF_OR_NAN
(integer) -
Значение, переданное в функцию json_encode() включает либо
NAN
, либоINF
. Если была указана константаJSON_PARTIAL_OUTPUT_ON_ERROR
, то вместо указанных особых значений будет выведен 0.Эта константа стала доступна начиная с PHP 5.5.0.
-
JSON_ERROR_UNSUPPORTED_TYPE
(integer) -
В функцию json_encode() было передано значение неподдерживаемого типа, например, resource. Если была указана константа
JSON_PARTIAL_OUTPUT_ON_ERROR
, то вместо неподдерживаемого значения будет выводитьсяNULL
.Эта константа стала доступна начиная с PHP 5.5.0.
Следующие константы можно комбинировать для использования в json_encode().
-
JSON_HEX_TAG
(integer) - Все < и > кодируются в \u003C и \u003E. Доступна начиная с PHP 5.3.0.
-
JSON_HEX_AMP
(integer) - Все & кодируются в \u0026. Доступна начиная с PHP 5.3.0.
-
JSON_HEX_APOS
(integer) - Все символы ' кодируются в \u0027. Доступна начиная с PHP 5.3.0.
-
JSON_HEX_QUOT
(integer) - Все символы " кодируются в \u0022. Доступна начиная с PHP 5.3.0.
-
JSON_FORCE_OBJECT
(integer) - Выдавать объект вместо массива при использовании неассоциативного массива. Это полезно, когда принимающая программа или код ожидают объект или же массив пуст. Доступна начиная с PHP 5.3.0.
-
JSON_NUMERIC_CHECK
(integer) - Кодирование строк, содержащих числа, как числа. Доступна начиная с PHP 5.3.3.
-
JSON_BIGINT_AS_STRING
(integer) - Кодирует большие целые числа в виде их строковых эквивалентов. Доступна начиная с PHP 5.4.0.
-
JSON_PRETTY_PRINT
(integer) - Использовать пробельные символы в возвращаемых данных для их форматирования. Доступна начиная с PHP 5.4.0.
-
JSON_UNESCAPED_SLASHES
(integer) - Не экранировать /. Доступна начиная с PHP 5.4.0.
-
JSON_UNESCAPED_UNICODE
(integer) - Не кодировать многобайтные символы Unicode (по умолчанию они кодируются как \uXXXX). Доступна начиная с PHP 5.4.0.
Вернуться к: JSON