Маршрутизатор
класс Маршрутизатор реализует 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 | Стек атрибутов группы маршрутов. | |
| защищённый массив | $implicitBindingCallback | Зарегистрированный пользовательский обратный вызов неявной привязки. | |
| статический массив строк | $verbs | Все поддерживаемые маршрутизатором глаголы. |
Методы
| 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)
Зарегистрировать новый маршрут по умолчанию. | |
| 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 = [])
Зарегистрировать массив контроллеров ресурсов-синглтонов. | |
| PendingSingletonResourceRegistration | singleton(string $name, string $controller, array $options = [])
Маршрутизировать ресурс-синглтон к контроллеру. | |
| void | apiSingletons(array $singletons, array $options = [])
Зарегистрировать массив контроллеров API-ресурсов-синглтонов. | |
| PendingSingletonResourceRegistration | apiSingleton(string $name, string $controller, array $options = [])
Маршрутизировать API-ресурс-синглтон к контроллеру. | |
| 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)
Добавить пространство имен последней группы к классу. | |
| string | prependGroupController(string $class)
Добавить контроллер последней группы к классу. |
| 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)
Подставить неявные привязки маршрута для данного маршрута. | |
| $this | substituteImplicitBindingsUsing(callable $callback)
Зарегистрировать обратный вызов для запуска после подстановки неявных привязок. | |
| 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)
Создание нового экземпляра маршрутизатора.
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 в маршрутизаторе.
Маршрут options(string $uri, array|string|callable $action = null)
Зарегистрировать новый маршрут OPTIONS в маршрутизаторе.
Маршрут any(string $uri, array|string|callable|null $action = null)
Зарегистрировать новый маршрут, обрабатывающий все глаголы.
Маршрут 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)
Зарегистрировать новый маршрут с заданными глаголами.
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 = [])
Зарегистрировать массив контроллеров ресурсов-синглтонов.
PendingSingletonResourceRegistration singleton(string $name, string $controller, array $options = [])
Маршрутизировать ресурс-синглтон к контроллеру.
void apiSingletons(array $singletons, array $options = [])
Зарегистрировать массив контроллеров API-ресурсов-синглтонов.
PendingSingletonResourceRegistration apiSingleton(string $name, string $controller, array $options = [])
Маршрутизировать API-ресурс-синглтон к контроллеру.
void group(array $attributes, Closure|string $routes)
Создать группу маршрутов с общими атрибутами.
protected void updateGroupStack(array $attributes)
Обновить стек групп заданными атрибутами.
array mergeWithLastGroup(array $new, bool $prependExistingPrefix = true)
Объединить заданный массив со стеком последней группы.
protected void loadRoutes(Closure|string $routes)
Загрузить предоставленные маршруты.
string getLastGroupPrefix()
Получить префикс из последней группы в стеке.
Маршрут addRoute(array|string $methods, string $uri, array|string|callable|null $action)
Добавить маршрут в основную коллекцию маршрутов.
protected Маршрут createRoute(array|string $methods, string $uri, mixed $action)
Создать новый экземпляр маршрута.
protected bool actionReferencesController(mixed $action)
Определить, если действие относится к контроллеру.
protected array convertToControllerAction(array|string $action)
Добавить действие маршрута на основе контроллера в массив действий.
protected string prependGroupNamespace(string $class)
Добавить префикс пространства имён последней группы к части кода.
protected string prependGroupController(string $class)
Добавить префикс контроллера последней группы к части кода.
Маршрут newRoute(array|string $methods, string $uri, mixed $action)
Создать новый объект Route.
protected string prefix(string $uri)
Добавить префикс к заданному URI с помощью последнего префикса.
protected Маршрут addWhereClausesToRoute(Маршрут $route)
Добавить необходимые условия where к маршруту на основе его первоначальной регистрации.
protected void mergeGroupAttributesIntoRoute(Маршрут $route)
Объединить стек групп с действием контроллера.
Response respondWithRoute(string $name)
Возвратить ответ, возвращённый данным маршрутом.
Response dispatch(Запрос $request)
Переслать запрос в приложение.
Response dispatchToRoute(Запрос $request)
Переслать запрос на маршрут и вернуть ответ.
protected Response runRoute(Запрос $request, Маршрут $route)
Возвратить ответ для заданного маршрута.
protected mixed runRouteWithinStack(Маршрут $route, Запрос $request)
Выполнить заданный маршрут в экземпляре стека "луковицы".
array gatherRouteMiddleware(Маршрут $route)
Собрать средства промежуточного программного обеспечения для данного маршрута с разрешенными именами классов.
array resolveMiddleware(array $middleware, array $excluded = [])
Разрешить плоский массив классов средств промежуточного программного обеспечения из предоставленного массива.
protected array sortMiddleware(Коллекция $middlewares)
Отсортировать заданные средства промежуточного программного обеспечения по приоритету.
Response prepareResponse(Request $request, mixed $response)
Создать экземпляр ответа из заданного значения.
static Response toResponse(Request $request, mixed $response)
Статическая версия prepareResponse.
void substituteImplicitBindings(Маршрут $route)
Подставить неявные привязки маршрута для заданного маршрута.
$this substituteImplicitBindingsUsing(callable $callback)
Зарегистрировать обратный вызов для выполнения после подстановки неявных привязок.
protected mixed performBinding(string $key, string $value, Маршрут $route)
Вызвать обратный вызов привязки для заданного ключа.
void matched(string|callable $callback)
Зарегистрировать обработчик события совпадения маршрута.
array getMiddleware()
Получить все определенные сокращенные имена средств промежуточного программного обеспечения.
$this aliasMiddleware(string $name, string $class)
Зарегистрировать сокращенное имя для средств промежуточного программного обеспечения.
bool hasMiddlewareGroup(string $name)
Проверить, существует ли группа средств промежуточного программного обеспечения с заданным именем.
array getMiddlewareGroups()
Получить все определенные группы средств промежуточного программного обеспечения.
$this middlewareGroup(string $name, array $middleware)
Зарегистрировать группу средств промежуточного программного обеспечения.
$this prependMiddlewareToGroup(string $group, string $middleware)
Добавить средство промежуточного программного обеспечения в начало группы средств промежуточного программного обеспечения.
Если средство промежуточного программного обеспечения уже есть в группе, оно не будет добавлено повторно.
$this pushMiddlewareToGroup(string $group, string $middleware)
Добавить средство промежуточного программного обеспечения в конец группы средств промежуточного программного обеспечения.
Если средство промежуточного программного обеспечения уже есть в группе, оно не будет добавлено повторно.
$this removeMiddlewareFromGroup(string $group, string $middleware)
Удалить указанный middleware из указанной группы.
$this flushMiddlewareGroups()
Очистить группы middleware маршрутизатора.
void bind(string $key, string|callable $binder)
Добавить новый binder параметра маршрута.
void model(string $key, string $class, Closure $callback = null)
Зарегистрировать binder модели для подстановки wildcard.
Closure getBindingCallback(string $key)
Получить binding callback для заданного binding.
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)
Установить экземпляр контейнера, используемый маршрутизатором.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/10.x/Illuminate/Routing/Router.html