/
githubmirror
/
framework
Обзор
Документация
Войти
/
githubmirror
/
framework
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
13.x
src/Illuminate/Validation/Rules/RequiredIf.php
51 строка
1 KB
Denis
[12.x] Add missing @throws annotations to validation rules and JsonResponse (#58697)
09 фев 2026, 16:29
Не верифицирован
09 фев 2026, 16:29
eaf2492
Код
Авторство
О чём код?
<?php namespace Illuminate\Validation\Rules; use Closure; use InvalidArgumentException; use Stringable; class RequiredIf implements Stringable { /** * The condition that validates the attribute. * * @var (\Closure(): bool)|bool */ public $condition; /** * Create a new required validation rule based on a condition. * * @param (\Closure(): bool)|bool|null $condition * * @throws \InvalidArgumentException */ public function __construct($condition) { if (is_null($condition)) { $condition = false; } if ($condition instanceof Closure || is_bool($condition)) { $this->condition = $condition; } else { throw new InvalidArgumentException('The provided condition must be a callable or boolean.'); } } /** * Convert the rule to a validation string. * * @return string */ public function __toString() { if (is_callable($this->condition)) { return call_user_func($this->condition) ? 'required' : ''; } return $this->condition ? 'required' : ''; } }