Download the PHP package diyorbek/laravel-attribute-routes without Composer
On this page you can find all versions of the php package diyorbek/laravel-attribute-routes. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download diyorbek/laravel-attribute-routes
More information about diyorbek/laravel-attribute-routes
Files in diyorbek/laravel-attribute-routes
Package laravel-attribute-routes
Short Description Laravel attribute-based route registrar package
License MIT
Informations about the package laravel-attribute-routes
Laravel Attribute Routes
Пакет, позволяющий задавать маршруты (routes
) прямо внутри методов контроллера с помощью #[Attribute]
для Laravel 9+ и PHP 8+. Вместо объявления маршрутов в routes/web.php
, вы можете указывать их напрямую в контроллерах.
🔧 Установка
-
Установите через Composer:
- Laravel автоматически загрузит
AttributeRouteServiceProvider
. Если потребуется — можно добавить его вручную вconfig/app.php
:
📦 Как это работает?
Маршруты задаются с помощью атрибутов вроде #[Get]
, #[Post]
и т.д. Эти атрибуты автоматически распознаются и регистрируются в системе маршрутизации Laravel.
🧪 Пример использования
1. Пример контроллера Http\Controllers\PostController.php
:
✍️ Доступные атрибуты
Атрибут | Описание |
---|---|
#[Get(uri)] |
Маршрут с методом GET |
#[Post(uri)] |
Маршрут с методом POST |
#[Put(uri)] |
Маршрут с методом PUT |
#[Parch(uri)] |
Маршрут с методом PATCH |
#[Delete(uri)] |
Маршрут с методом DELETE |
Каждый атрибут может содержать следующие параметры:
Параметр | Описание |
---|---|
uri |
Адрес маршрута (обязательный) |
name |
Имя маршрута (необязательный) |
middleware |
Список middleware (необязательный) |
⚙️ Дополнительные настройки
Если ваши контроллеры находятся в другой директории, вы можете указать путь вручную в AttributeRouteRegistrar
:
❗ Примечания
- Пакет работает только с PHP 8.0 или выше и Laravel 9+.
- Поддерживаются только
public
методы контроллеров. - Не требуется регистрировать маршруты в
routes/web.php
. Однако, если маршрут работает только черезweb
middleware, обязательно указывайте его.
🤝 Вклад в развитие
- Сделайте fork репозитория
- Создайте новую ветку
- Внесите изменения
- Отправьте Pull Request
📫 Автор
- Диёрбек (Telegram:
@Diyorbek_tj
) - GitHub: github.com/diyorbektj