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

Метод whereNumber

Метод whereNumber применяется к объекту маршрута и позволяет ограничить параметр маршрута только числовыми значениями. В качестве аргумента метод принимает имя параметра, который должен содержать только цифры. Это особенно полезно для идентификаторов моделей, номеров страниц и других числовых идентификаторов. Метод возвращает тот же объект маршрута, что позволяет использовать цепочки вызовов.

Синтаксис

<?php Route::get($url, $callback)->whereNumber($parameter); ?>

Пример

Давайте ограничим параметр 'id' в маршруте для отображения пользователя только числами:

<?php use Illuminate\Support\Facades\Route; use AppHttpControllers\UserController; Route::get('/user/{id}', [UserController::class, 'show']) ->whereNumber('id'); ?>

Теперь маршрут будет совпадать только для URL типа /abcde, но не для /abcde.

/user/123 // matches /user/456 // matches /user/abcde // does not match

Пример

Метод whereNumber можно использовать для нескольких параметров маршрута:

<?php use Illuminate\Support\Facades\Route; Route::get('/posts/{category}/{page}', function ($category, $page) { return "Category: $category, Page: $page"; })->whereNumber('page'); ?>

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

/posts/tech/1 // "Category: tech, Page: 1" /posts/tech/2 // "Category: tech, Page: 2" /posts/tech/abcde // 404 Not Found

Пример

Давайте используем whereNumber вместе с другими ограничениями для одного маршрута:

<?php use Illuminate\Support\Facades\Route; use AppHttpControllers\ProductController; Route::get('/product/{category}/{id}', [ProductController::class, 'show']) ->whereAlpha('category') ->whereNumber('id'); ?>

В этом примере параметр 'category' ограничен только буквами, а параметр 'id' - только числами. Это обеспечивает строгую валидацию обоих параметров маршрута.

/product/tech/123 // matches /product/tech/abcde // does not match /product/123/123 // does not match

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

  • метод where,
    который позволяет задать произвольное регулярное выражение для параметра
  • метод whereAlpha,
    который ограничивает параметр только буквенными символами
  • метод whereAlphaNumeric,
    который ограничивает параметр буквенно-цифровыми символами
  • метод whereUuid,
    который ограничивает параметр UUID форматом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить