РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
601 of 1392 menu

Правило json

Правило json применяется в валидации запросов Laravel и проверяет, что значение поля представляет собой строку, содержащую валидный JSON. При этом проверяется только синтаксическая корректность JSON, тип данных значения не ограничивается - это может быть объект, массив, число, строка или булево значение.

Синтаксис

Правило указывается в массиве правил валидации в виде строки или с использованием класса Rule:

<?php 'field' => 'json' ?>

Либо через фасад Validator:

<?php use Illuminate\Validation\Rule; 'field' => Rule::json() ?>

Пример

Давайте проверим, что поле 'options' содержит валидную JSON-строку:

<?php use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; $data = [ 'options' => '{"theme": "dark", "notifications": true}' ]; $rules = [ 'options' => 'json' ]; $validator = Validator::make($data, $rules); if ($validator->passes()) { echo "Validation passed"; } else { echo "Validation failed"; } ?>

Результат выполнения кода:

"Validation passed"

Пример

Поле 'settings' содержит массив в формате JSON:

<?php use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; use Illuminate\Validation\Rule; $data = [ 'settings' => '["user", "admin", "guest"]' ]; $rules = [ 'settings' => Rule::json() ]; $validator = Validator::make($data, $rules); if ($validator->fails()) { echo "Validation failed: " . $validator->errors()->first('settings'); } else { echo "JSON is valid"; } ?>

Результат выполнения кода:

"JSON is valid"

Пример

Проверка невалидного JSON с синтаксической ошибкой:

<?php use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; $data = [ 'config' => '{"key": "value",}' ]; $rules = [ 'config' => 'json' ]; $validator = Validator::make($data, $rules); if ($validator->fails()) { echo $validator->errors()->first('config'); } else { echo "JSON is valid"; } ?>

Результат выполнения кода:

"The config must be a valid JSON string"

Смотрите также

  • правило array,
    которое проверяет, что поле является массивом
  • правило string,
    которое проверяет, что поле является строкой
  • правило boolean,
    которое проверяет, что поле является булевым значением
  • правило numeric,
    которое проверяет, что поле является числом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить