json_validate
(PHP 8 >= 8.3.0)
json_validate — Перевіряє, чи має рядок допустимий JSON
Опис
json_validate(string $json, int $depth = 512, int $flags = 0): bool
Повертає результат перевірки відповідності формату вхідного рядка (string) допустимому JSON. Якщо функція json_validate() поверне true
, функцияjson_decode()успешно декодирует входную строку при использовании тех же параметровdepth
иflags
Якщо функція json_validate() поверне false
, причину можно будет установить с помощью функцииjson_last_error() і json_last_error_msg()
Функция**json_validate()**использует меньше памяти, чем функцияjson_decode(), оскільки їй не потрібно декодувати корисне навантаження JSON або створювати структуру масиву або об'єкта, що містить її.
Застереження
Виклик функції **json_validate()**непосредственно перед функциейjson_decode() призведе до непотрібного подвійного аналізу рядка, оскільки функція json_decode() неявно виконує таку перевірку під час декодування.
Використати функцію json_validate() треба тільки у випадку, коли дані декодування корисного навантаження JSON не потрібно використовувати негайно, і необхідно знати, чи містить рядок допустимий JSON.
Список параметрів
json
Рядок для перевірки.
Ця функція працює тільки з рядками кодування UTF-8.
Зауваження :
PHP реалізує надмножина JSON, який описаний у початковому » RFC 7159
depth
Максимальна глибина вкладеності структури, на яку проводитиметься декодування. Значення має бути більшим і менше чи одно 2147483647
flags
В даний час приймається тільки JSON_INVALID_UTF8_IGNORE
Значення, що повертаються
Повертає **true
**якщо вхідний рядок є синтаксично допустимим JSON, або false
в іншому випадку.
Помилки
Если значение параметраdepth
виходить за межі допустимого діапазону, буде викинуто виняток ValueError
Если значение параметраflags
— неприпустимий прапор, буде викинуто виняток ValueError
Приклади
Приклад #1 Приклад використання json_validate()****
Loading...
Результат виконання наведеного прикладу:
bool(true)
bool(false)
Дивіться також
- json_decode() - Декодує рядок JSON
- json_last_error() - Повертає останню помилку
- json_last_error_msg() - Повертає рядок з повідомленням про помилку останнього дзвінка json_encode() або json_decode()