Json object to php: PHP: json_decode — Manual

PHP JSON — AlphaCodingSkills

Расширение JSON реализует формат обмена данными JavaScript Object Notation (JSON). PHP поставляется с парсером, который специально написан для PHP и распространяется под лицензией PHP.

Установка

Расширение JSON включено и скомпилировано в PHP по умолчанию. Начиная с PHP 8.0.0, расширение JSON является основным расширением PHP, поэтому оно всегда включено.

Конфигурация среды выполнения

Это расширение не имеет директив конфигурации, определенных в php.ini .

Описание класса
JsonException Класс JsonException.
Описание интерфейса
JsonSerializable Интерфейс JsonSerializable.
Методы Описание
jsonSerialize() Укажите данные, которые должны быть сериализованы в JSON.
Функции Описание
json_decode() Декодирует строку JSON.
json_encode() Возвращает представление значения в формате JSON.
json_last_error_msg() Возвращает строку ошибки последнего вызова json_encode() или json_decode().
json_last_error() Возвращает последнюю возникшую ошибку.

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

Следующие константы указывают тип ошибки, возвращаемый json_last_error() или сохраняемый как код JsonException.

Константы Тип Описание
JSON_ERROR_NONE Целое число Ошибка не обнаружена.
JSON_ERROR_DEPTH Целое число Превышена максимальная глубина стека.
JSON_ERROR_STATE_MISMATCH Целое число Происходит при потере значимости или при несоответствии режимов.
JSON_ERROR_CTRL_CHAR Целое число Ошибка управляющего символа, возможно, неправильно закодирован.
JSON_ERROR_SYNTAX Целое число Синтаксическая ошибка.
JSON_ERROR_UTF8 Целое число Неверные символы UTF-8, возможно, неправильно закодированные.
JSON_ERROR_RECURSION Целое число Объект или массив, переданный в json_encode(), включает рекурсивные ссылки и не может быть закодирован. Если была задана опция JSON_PARTIAL_OUTPUT_ON_ERROR, то вместо рекурсивной ссылки будет закодирован null.
JSON_ERROR_INF_OR_NAN Целое число Значение, переданное в json_encode(), включает либо NAN, либо INF. Если была задана опция JSON_PARTIAL_OUTPUT_ON_ERROR, вместо этих специальных чисел будет закодирован 0.
JSON_ERROR_UNSUPPORTED_TYPE Целое число Функция json_encode() получила значение неподдерживаемого типа, например ресурс. Если была задана опция JSON_PARTIAL_OUTPUT_ON_ERROR, вместо неподдерживаемого значения будет закодировано значение null.
JSON_ERROR_INVALID_PROPERTY_NAME Целое число Ключ, начинающийся с символа \u0000, находился в строке, переданной функции json_decode() при декодировании объекта JSON в объект PHP.
JSON_ERROR_UTF16 Целое число Одиночный непарный суррогат UTF-16 в escape-последовательности Unicode, содержащийся в строке JSON, переданной в json_decode().

Следующие константы можно комбинировать для формирования опций для json_decode().

Константы Тип Описание
JSON_BIGINT_AS_STRING Целое число Декодирует большие целые числа как их исходное строковое значение.
JSON_OBJECT_AS_ARRAY Целое число Декодирует объекты JSON как массив PHP. Эту опцию можно добавить автоматически, вызвав json_decode() со вторым параметром, равным true.

Следующие константы можно комбинировать для формирования параметров json_encode().

Константы Тип Описание
JSON_HEX_TAG Целое число Все < и > преобразуются в \u003C и \u0 03Э.
JSON_HEX_AMP Целое число Все & преобразуются в \u0026.
JSON_HEX_APOS Целое число Все ‘ преобразуются в \u0027.
JSON_HEX_QUOT Целое число Все » преобразуются в \u0022.
JSON_FORCE_OBJECT Целое число При использовании неассоциативного массива выводит объект, а не массив.Особенно полезно, когда получатель на выходе ожидается объект, а массив пуст. 0022
JSON_NUMERIC_CHECK Целое число Кодирует числовые строки как числа.
JSON_PRETTY_PRINT Целое число Используйте пробелы в возвращенных данных для их форматирования.
JSON_UNESCAPED_SLASHES Целое число Не экранировать /.
JSON_UNESCAPED_UNICODE Целое число Буквально кодировать многобайтовые символы Unicode (по умолчанию экранируется как \uXXXX).
JSON_PARTIAL_OUTPUT_ON_ERROR Целое число Заменить некоторые некодируемые значения вместо ошибочных.
JSON_PRESERVE_ZERO_FRACTION Целое число Гарантирует, что значения с плавающей точкой всегда кодируются как значение с плавающей запятой.
JSON_UNESCAPED_LINE_TERMINATORS Целое число Признаки конца строки не экранируются, когда передается JSON_UNESCAPED_UNICODE.

Imacros | Все права защищены © 2021