(PECL simdjson >= 2.0.0)
simdjson_key_value — Декодирует значение строки JSON, расположенной по запрошенному указателю JSON
Декодирует и возвращает значение, найденное в запрошенном указателе JSON.
json
Запрашиваемая и декодируемая строка (string) в формате json
.
Функция работает только со строками в кодировке UTF-8.
Функция анализирует допустимые входные данные, которые функция json_decode() может декодировать, при условии, что их длина не превышает 4 Гб.
key
Строка (string) указатель JSON.
associative
При значении true
, объекты JSON будут возвращены как ассоциативные массивы (array);
при значении false
, объекты JSON будут возвращены как объекты (object).
depth
Максимальная глубина вложенности декодируемой структуры.
Значение должно быть больше 0
и меньше или равно 2147483647
.
Вызывающие команды должны использовать достаточно маленькие значения,
поскольку большая глубина требуют больше места в буфере и увеличивают глубину рекурсии,
в отличие от текущей реализации функции json_decode().
Возвращает часть значения, закодированное в параметре json
на которую ссылается ключ key
в соответствующем PHP-типе.
Значения true
, false
и null
возвращаются как true
, false
и null
соответственно.
Если параметр json
или key
недопустимы
или параметр key
не удалось найти в параметре json
,
то начиная с версии PECL simdjson 2.1.0 выбрасывается исключение SimdJsonException;
ранее выбрасывалось исключение RuntimeException.
Если параметр depth
находится вне допустимого диапазона,
то начиная с версии PECL simdjson 3.0.0 выбрасывается исключение SimdJsonValueError,
тогда как ранее выдавалась ошибка уровня E_WARNING
.