simdjson_key_value
(PECL simdjson >= 2.0.0)
simdjson_key_value — Декодує значення рядка JSON, розташованого за запитаним покажчиком JSON
Опис
simdjson_key_value( string $json, string $key, bool $associative = false, int $depth = 512): mixed
Декодує та повертає значення, знайдене у запитаному покажчику JSON.
Список параметрів
json
Запрошуваний та декодований рядок (string) у форматі json
Функція працює тільки з рядками кодування UTF-8.
Функція аналізує допустимі вхідні дані, які функція json_decode() може декодувати, за умови, що їхня довжина не перевищує 4 Гб.
key
Рядок (string) покажчик JSON.
associative
При значении**true
**, об'єкти JSON будуть повернуті як асоціативні масиви (array); при значенні false
, об'єкти JSON будуть повернуті як об'єкти (object).
depth
Максимальна глибина вкладеності структури, що декодується. Значення має бути більшим і менше чи одно 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
Дивіться також
- json_encode() - Повертає JSON-подання даних
- simdjson_decode() - Декодує рядок JSON