Маршрутизатор
класс Маршрутизатор реализует BindingRegistrar, Registrar миксин RouteRegistrar (Просмотреть исходный код)
Трейты
| Macroable |
Свойства
| статический защищённый массив | $macros | Зарегистрированные строковые макросы. | из Macroable |
| защищённый Dispatcher | $events | Экземпляр диспетчера событий. | |
| защищённый Container | $container | Экземпляр контейнера IoC. | |
| защищённый RouteCollectionInterface | $routes | Экземпляр коллекции маршрутов. | |
| защищённый Route|null | $current | Экземпляр текущего обрабатываемого маршрута. | |
| защищённый Request | $currentRequest | Запрос, который в данный момент обрабатывается. | |
| защищённый массив | $middleware | Все псевдонимы для middleware. | |
| защищённый массив | $middlewareGroups | Все группы middleware. | |
| массив | $middlewarePriority | Список middleware, отсортированный по приоритету. | |
| защищённый массив | $binders | Зарегистрированные обработчики значений маршрута. | |
| защищённый массив | $patterns | Глобально доступные шаблоны параметров. | |
| защищённый массив | $groupStack | Стек атрибутов группы маршрутов. | |
| статический массив строк | $verbs | Все поддерживаемые router глаголы. |
Методы
| static void | macro(string $name, object|callable $macro)
Зарегистрировать пользовательский макрос. | from Macroable |
| static void | mixin(object $mixin, bool $replace = true)
Добавить другой объект в класс. | from Macroable |
| static bool | hasMacro(string $name)
Проверить, зарегистрирован ли макрос. | from Macroable |
| static void | flushMacros()
Очистить существующие макросы. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Динамически обработать вызовы класса. | from Macroable |
| mixed | __call(string $method, array $parameters)
Динамически обработать вызовы в экземпляр маршрутизатора. | |
| void | __construct(Dispatcher $events, Container $container = null)
Создать новый экземпляр маршрутизатора. | |
| Route | get(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут GET в маршрутизаторе. | |
| Route | post(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут POST в маршрутизаторе. | |
| Route | put(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут PUT в маршрутизаторе. | |
| Route | patch(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут PATCH в маршрутизаторе. | |
| Route | delete(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут DELETE в маршрутизаторе. | |
| Route | options(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут OPTIONS в маршрутизаторе. | |
| Route | any(string $uri, array|string|callable|null $action = null)
Зарегистрировать новый маршрут, отвечающий на все глаголы. | |
| Route | fallback(array|string|callable|null $action)
Зарегистрировать новый маршрут Fallback в маршрутизаторе. | |
| Route | redirect(string $uri, string $destination, int $status = 302)
Создать перенаправление с одного URI на другой. | |
| Route | permanentRedirect(string $uri, string $destination)
Создать постоянное перенаправление с одного URI на другой. | |
| Route | view(string $uri, string $view, array $data = [], int|array $status = 200, array $headers = [])
Зарегистрировать новый маршрут, возвращающий представление. | |
| Route | match(array|string $methods, string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут с заданными глаголами. | |
| void | resources(array $resources, array $options = [])
Зарегистрировать массив контроллеров ресурсов. | |
| PendingResourceRegistration | resource(string $name, string $controller, array $options = [])
Маршрутизировать ресурс к контроллеру. | |
| void | apiResources(array $resources, array $options = [])
Зарегистрировать массив API контроллеров ресурсов. | |
| PendingResourceRegistration | apiResource(string $name, string $controller, array $options = [])
Маршрутизировать API ресурс к контроллеру. | |
| void | singletons(array $singletons, array $options = [])
Зарегистрировать массив контроллеров ресурсов singleton. | |
| PendingSingletonResourceRegistration | singleton(string $name, string $controller, array $options = [])
Маршрутизировать ресурс singleton к контроллеру. | |
| void | apiSingletons(array $singletons, array $options = [])
Зарегистрировать массив API контроллеров ресурсов singleton. | |
| PendingSingletonResourceRegistration | apiSingleton(string $name, string $controller, array $options = [])
Маршрутизировать API ресурс singleton к контроллеру. | |
| void | group(array $attributes, Closure|string $routes)
Создать группу маршрутов с общими атрибутами. | |
| void | updateGroupStack(array $attributes)
Обновить стек групп заданными атрибутами. | |
| array | mergeWithLastGroup(array $new, bool $prependExistingPrefix = true)
Объединить заданный массив со стеком последней группы. | |
| void | loadRoutes(Closure|string $routes)
Загрузить предоставленные маршруты. | |
| string | getLastGroupPrefix()
Получить префикс из последней группы в стеке. | |
| Route | addRoute(array|string $methods, string $uri, array|string|callable|null $action)
Добавить маршрут в базовую коллекцию маршрутов. | |
| Route | createRoute(array|string $methods, string $uri, mixed $action)
Создать новый экземпляр маршрута. | |
| bool | actionReferencesController(mixed $action)
Определить, ссылается ли действие на контроллер. | |
| array | convertToControllerAction(array|string $action)
Добавить действие маршрута, основанное на контроллере, в массив действий. | |
| string | prependGroupNamespace(string $class)
Добавить префикс последнего пространства имен группы к части use. | |
| string | prependGroupController(string $class)
Добавить префикс последнего контроллера группы к части use. |
| Route | newRoute(array|string $methods, string $uri, mixed $action)
Создать новый объект Route. | |
| string | prefix(string $uri)
Добавить префикс к заданному URI с использованием последнего префикса. | |
| Route | addWhereClausesToRoute(Route $route)
Добавить необходимые условия where к маршруту на основе его первоначальной регистрации. | |
| void | mergeGroupAttributesIntoRoute(Route $route)
Объединить стек групп с действием контроллера. | |
| Response | respondWithRoute(string $name)
Вернуть ответ, возвращаемый заданным маршрутом. | |
| Response | dispatch(Request $request)
Отправить запрос в приложение. | |
| Response | dispatchToRoute(Request $request)
Отправить запрос к маршруту и вернуть ответ. | |
| Route | findRoute(Request $request)
Найти маршрут, соответствующий заданному запросу. | |
| Response | runRoute(Request $request, Route $route)
Вернуть ответ для заданного маршрута. | |
| mixed | runRouteWithinStack(Route $route, Request $request)
Запустить заданный маршрут в экземпляре Stack "onion". | |
| array | gatherRouteMiddleware(Route $route)
Собрать middleware для заданного маршрута с разрешенными именами классов. | |
| array | resolveMiddleware(array $middleware, array $excluded = [])
Разрешить плоский массив классов middleware из предоставленного массива. | |
| array | sortMiddleware(Collection $middlewares)
Отсортировать заданный middleware по приоритету. | |
| Response | prepareResponse(Request $request, mixed $response)
Создать экземпляр ответа из заданного значения. | |
| static Response | toResponse(Request $request, mixed $response)
Статическая версия prepareResponse. | |
| Route | substituteBindings(Route $route)
Подставить привязки маршрута в маршрут. | |
| void | substituteImplicitBindings(Route $route)
Подставить неявные привязки маршрута для заданного маршрута. | |
| mixed | performBinding(string $key, string $value, Route $route)
Вызвать обратный вызов привязки для заданного ключа. | |
| void | matched(string|callable $callback)
Зарегистрировать слушателя события совпадения маршрута. | |
| array | getMiddleware()
Получить все определенные сокращенные имена middleware. | |
| $this | aliasMiddleware(string $name, string $class)
Зарегистрировать сокращенное имя для middleware. | |
| bool | hasMiddlewareGroup(string $name)
Проверить, существует ли middlewareGroup с заданным именем. | |
| array | getMiddlewareGroups()
Получить все определенные группы middleware. | |
| $this | middlewareGroup(string $name, array $middleware)
Зарегистрировать группу middleware. | |
| $this | prependMiddlewareToGroup(string $group, string $middleware)
Добавить middleware в начало группы middleware. | |
| $this | pushMiddlewareToGroup(string $group, string $middleware)
Добавить middleware в конец группы middleware. | |
| $this | removeMiddlewareFromGroup(string $group, string $middleware)
Удалить заданный middleware из указанной группы. | |
| $this | flushMiddlewareGroups()
Очистить группы middleware маршрутизатора. | |
| void | bind(string $key, string|callable $binder)
Добавить новый привязчик параметра маршрута. | |
| void | model(string $key, string $class, Closure $callback = null)
Зарегистрировать привязчик модели для подстановочного знака. | |
| Closure | getBindingCallback(string $key)
Получить обратный вызов привязки для данной привязки. | |
| array | getPatterns()
Получить глобальные шаблоны "where". | |
| void | pattern(string $key, string $pattern)
Установить глобальный шаблон where для всех маршрутов. | |
| void | patterns(array $patterns)
Установить группу глобальных шаблонов where для всех маршрутов. | |
| bool | hasGroupStack()
Определить, имеет ли маршрутизатор стек групп в данный момент. | |
| array | getGroupStack()
Получить текущий стек групп для маршрутизатора. | |
| mixed | input(string $key, string|null $default = null)
Получить параметр маршрута для текущего маршрута. | |
| Request | getCurrentRequest()
Получить запрос, который в данный момент обрабатывается. | |
| Route|null | getCurrentRoute()
Получить текущий экземпляр обработанного маршрута. | |
| Route|null | current()
Получить текущий экземпляр обработанного маршрута. | |
| bool | has(string|array $name)
Проверить, существует ли маршрут с заданным именем. | |
| string|null | currentRouteName()
Получить текущее имя маршрута. | |
| bool | is(mixed ...$patterns)
Псевдоним для метода "currentRouteNamed". |
| bool | currentRouteNamed(mixed ...$patterns)
Определить, соответствует ли текущий маршрут шаблону. | |
| string|null | currentRouteAction()
Получить действие текущего маршрута. | |
| bool | uses(array ...$patterns)
Псевдоним для метода "currentRouteUses". | |
| bool | currentRouteUses(string $action)
Определить, соответствует ли действие текущего маршрута заданному действию. | |
| void | singularResourceParameters(bool $singular = true)
Установить неотображенные глобальные параметры ресурса в единственном числе. | |
| void | resourceParameters(array $parameters = [])
Установить глобальное отображение параметров ресурса. | |
| array|null | resourceVerbs(array $verbs = [])
Получить или установить глаголы, используемые в URI ресурса. | |
| RouteCollectionInterface | getRoutes()
Получить базовую коллекцию маршрутов. | |
| void | setRoutes(RouteCollection $routes)
Установить экземпляр коллекции маршрутов. | |
| void | setCompiledRoutes(array $routes)
Установить скомпилированный экземпляр коллекции маршрутов. | |
| static array | uniqueMiddleware(array $middleware)
Удалить дублирующееся middleware из заданного массива. | |
| $this | setContainer(Container $container)
Установить экземпляр контейнера, используемый маршрутизатором. |
Подробности
static void macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макро.
static void mixin(object $mixin, bool $replace = true)
Смешать другой объект в класс.
static bool hasMacro(string $name)
Проверяет, зарегистрировано ли макро.
static void flushMacros()
Очистить существующие макросы.
static mixed __callStatic(string $method, array $parameters)
Динамически обрабатывать вызовы класса.
mixed __call(string $method, array $parameters)
Динамически обрабатывать вызовы в экземпляр маршрутизатора.
void __construct(Dispatcher $events, Container $container = null)
Создать новый экземпляр Router.
Route get(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут GET в маршрутизаторе.
Route post(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут POST в маршрутизаторе.
Route put(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут PUT в маршрутизаторе.
Route patch(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут PATCH в маршрутизаторе.
Route delete(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут DELETE в маршрутизаторе.
Route options(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут OPTIONS в маршрутизаторе.
Маршрут any(string $uri, array|string|callable|null $action = null)
Регистрация нового маршрута, обрабатывающего все HTTP-методы.
Маршрут fallback(array|string|callable|null $action)
Регистрация нового маршрута по умолчанию в маршрутизаторе.
Маршрут redirect(string $uri, string $destination, int $status = 302)
Создание перенаправления с одного URI на другой.
Маршрут permanentRedirect(string $uri, string $destination)
Создание постоянного перенаправления с одного URI на другой.
Маршрут view(string $uri, string $view, array $data = [], int|array $status = 200, array $headers = [])
Регистрация нового маршрута, возвращающего представление.
Маршрут match(array|string $methods, string $uri, array|string|callable $action = null)
Регистрация нового маршрута с указанными HTTP-методами.
void resources(array $resources, array $options = [])
Регистрация массива контроллеров ресурсов.
ЗаписьРегистрацииРесурса resource(string $name, string $controller, array $options = [])
Маршрутизация ресурса к контроллеру.
void apiResources(array $resources, array $options = [])
Регистрация массива контроллеров API-ресурсов.
ЗаписьРегистрацииРесурса apiResource(string $name, string $controller, array $options = [])
Маршрутизация API-ресурса к контроллеру.
void singletons(array $singletons, array $options = [])
Регистрация массива контроллеров-синглтонов ресурсов.
ЗаписьРегистрацииСинглтонаРесурса singleton(string $name, string $controller, array $options = [])
Маршрутизация синглтон-ресурса к контроллеру.
void apiSingletons(array $singletons, array $options = [])
Регистрация массива контроллеров API-синглтонов ресурсов.
ЗаписьРегистрацииСинглтонаРесурса apiSingleton(string $name, string $controller, array $options = [])
Маршрутизация API-синглтон-ресурса к контроллеру.
void group(array $attributes, Closure|string $routes)
Создание группы маршрутов с общими атрибутами.
protected void updateGroupStack(array $attributes)
Обновление стека групп с заданными атрибутами.
массив mergeWithLastGroup(массив $new, bool $prependExistingPrefix = true)
Объединить заданный массив со стеком последней группы.
protected void loadRoutes(Closure|строка $routes)
Загрузить предоставленные маршруты.
строка getLastGroupPrefix()
Получить префикс из последней группы в стеке.
Маршрут addRoute(массив|строка $methods, строка $uri, массив|строка|вызов|null $action)
Добавить маршрут в базовую коллекцию маршрутов.
protected Маршрут createRoute(массив|строка $methods, строка $uri, смешанный $action)
Создать новый экземпляр маршрута.
protected bool actionReferencesController(смешанный $action)
Определить, ссылается ли действие на контроллер.
protected массив convertToControllerAction(массив|строка $action)
Добавить действие маршрута, основанное на контроллере, в массив действий.
protected строка prependGroupNamespace(строка $class)
Добавить префикс последнего группового пространства имен к фрагменту использования.
protected строка prependGroupController(строка $class)
Добавить префикс последнего группового контроллера к фрагменту использования.
Маршрут newRoute(массив|строка $methods, строка $uri, смешанный $action)
Создать новый объект Route.
protected строка prefix(строка $uri)
Добавить префикс к заданному URI с помощью последнего префикса.
protected Маршрут addWhereClausesToRoute(Маршрут $route)
Добавить необходимые условия where к маршруту на основе его начальной регистрации.
protected void mergeGroupAttributesIntoRoute(Маршрут $route)
Объединить стек групп с действием контроллера.
Ответ respondWithRoute(строка $name)
Возврат ответа, возвращённого заданным маршрутом.
Ответ dispatch(Запрос $request)
Передать запрос в приложение.
Ответ dispatchToRoute(Запрос $request)
Передать запрос на маршрут и вернуть ответ.
protected mixed runRouteWithinStack(Маршрут $route, Запрос $request)
Выполнить данный маршрут в экземпляре стека "луковицы".
array gatherRouteMiddleware(Маршрут $route)
Получить список middleware для данного маршрута с разрешенными именами классов.
array resolveMiddleware(array $middleware, array $excluded = [])
Разрешить плоский массив middleware-классов из предоставленного массива.
protected array sortMiddleware(Коллекция $middlewares)
Отсортировать middleware по приоритету.
Response prepareResponse(Request $request, mixed $response)
Создать экземпляр ответа из данного значения.
static Response toResponse(Request $request, mixed $response)
Статический вариант prepareResponse.
void substituteImplicitBindings(Маршрут $route)
Заменить неявные привязки маршрута для данного маршрута.
protected mixed performBinding(string $key, string $value, Маршрут $route)
Вызвать обработчик привязки для данного ключа.
void matched(string|callable $callback)
Зарегистрировать обработчик события сопоставления маршрута.
array getMiddleware()
Получить все определенные middleware сокращенные имена.
$this aliasMiddleware(string $name, string $class)
Зарегистрировать сокращенное имя для middleware.
bool hasMiddlewareGroup(string $name)
Проверить, существует ли middleware группа с заданным именем.
array getMiddlewareGroups()
Получить все определенные группы middleware.
$this middlewareGroup(string $name, array $middleware)
Зарегистрировать группу middleware.
$this prependMiddlewareToGroup(string $group, string $middleware)
Добавить middleware в начало группы middleware.
Если middleware уже в группе, он не будет добавлен повторно.
$this pushMiddlewareToGroup(string $group, string $middleware)
Добавить middleware в конец группы middleware.
Если middleware уже в группе, он не будет добавлен повторно.
$this removeMiddlewareFromGroup(string $group, string $middleware)
Удалить заданный middleware из указанной группы.
$this flushMiddlewareGroups()
Очистить группы middleware маршрутизатора.
void bind(string $key, string|callable $binder)
Добавить новый связующий параметр маршрута.
void model(string $key, string $class, Closure $callback = null)
Зарегистрировать связующий модуль для подстановочного знака.
Closure getBindingCallback(string $key)
Получить обратный вызов для привязки по заданному ключу.
array getPatterns()
Получить глобальные шаблоны "где".
void pattern(string $key, string $pattern)
Установить глобальный шаблон "где" для всех маршрутов.
void patterns(array $patterns)
Установить группу глобальных шаблонов "где" для всех маршрутов.
bool hasGroupStack()
Определить, есть ли в настоящее время стек групп маршрутизатора.
array getGroupStack()
Получить текущий стек групп для маршрутизатора.
mixed input(string $key, string|null $default = null)
Получить параметр маршрута для текущего маршрута.
Request getCurrentRequest()
Получить запрос, который в настоящее время обрабатывается.
Route|null getCurrentRoute()
Получить текущую экземпляр маршрута.
Route|null current()
Получить текущую экземпляр маршрута.
bool has(string|array $name)
Проверить наличие маршрута с заданным именем.
string|null currentRouteName()
Получить имя текущего маршрута.
bool is(mixed ...$patterns)
Псевдоним для метода "currentRouteNamed".
bool currentRouteNamed(mixed ...$patterns)
Определить, соответствует ли текущий маршрут шаблону.
string|null currentRouteAction()
Получить действие текущего маршрута.
bool uses(array ...$patterns)
Псевдоним для метода "currentRouteUses".
bool currentRouteUses(string $action)
Определить, соответствует ли действие текущего маршрута заданному действию.
void singularResourceParameters(bool $singular = true)
Установить глобальные параметры ресурса в единственном числе.
void resourceParameters(array $parameters = [])
Установить глобальное отображение параметров ресурса.
array|null resourceVerbs(array $verbs = [])
Получить или установить глаголы, используемые в URI ресурсов.
Интерфейс коллекции маршрутов getRoutes()
Получить базовый набор маршрутов.
void setRoutes(Коллекция маршрутов $routes)
Установить экземпляр коллекции маршрутов.
void setCompiledRoutes(array $routes)
Установить скомпилированный экземпляр коллекции маршрутов.
static array uniqueMiddleware(array $middleware)
Удалить все дублирующиеся middleware из заданного массива.
$this setContainer(Контейнер $container)
Установить экземпляр контейнера, используемый маршрутизатором.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/9.x/Illuminate/Routing/Router.html