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

Метод filled

Метод filled класса Illuminate\Http\Request применяется для проверки наличия переданного поля в запросе и его заполненности. Первым параметром передаётся имя поля в виде строки. Метод возвращает true, если поле присутствует в запросе и его значение не является пустым, и false в противном случае. В отличие от метода has, метод filled также проверяет, что значение поля не пустое (не равно '', ' ', 'null', '[]').

Синтаксис

<?php $request->filled($key); ?>

Пример

Давайте проверим, присутствует ли поле 'name' в запросе и имеет ли оно непустое значение:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { public function store(Request $request) { if ($request->filled('name')) { echo "The name field is filled."; } else { echo "The name field is empty or missing."; } } } ?>

Результат выполнения кода при отправке запроса с полем 'name', равным 'John Doe':

"The name field is filled."

Результат выполнения кода при отправке запроса без поля 'name' или с пустым полем:

"The name field is empty or missing."

Пример

Давайте проверим наличие поля 'email' в запросе методом filled и выведем его значение, если оно заполнено:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class ProfileController extends Controller { public function update(Request $request) { if ($request->filled('email')) { $email = $request->input('email'); echo "Email: " . $email; } else { echo "Email is not provided."; } } } ?>

Результат выполнения кода при отправке запроса с полем 'email', равным 'john@example.com':

"Email: john@example.com"

Пример

Давайте проверим несколько полей запроса одновременно с помощью метода filled:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class PostController extends Controller { public function create(Request $request) { if ($request->filled('title') && $request->filled('content')) { echo "Both title and content are provided."; } elseif ($request->filled('title')) { echo "Only title is provided."; } elseif ($request->filled('content')) { echo "Only content is provided."; } else { echo "Neither title nor content is provided."; } } } ?>

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

"Both title and content are provided."

Результат выполнения кода при отправке запроса только с полем 'title':

"Only title is provided."

Пример

Давайте сравним работу методов filled и has на примере пустого значения:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class TestController extends Controller { public function test(Request $request) { $has = $request->has('empty_field'); $filled = $request->filled('empty_field'); echo "Has: " . ($has ? "true" : "false") . "\n"; echo "Filled: " . ($filled ? "true" : "false"); } } ?>

Результат выполнения кода при отправке запроса с полем 'empty_field', равным пустой строке:

"Has: true" "Filled: false"

Как видно из примера, has возвращает true, так как поле присутствует, а filled возвращает false, так как значение считается пустым.

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

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