vdauchy / laravel-routing-extender
Installs: 66
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/vdauchy/laravel-routing-extender
Requires
- php: ^7.4|^8.0
- ext-json: *
- illuminate/routing: *
- illuminate/support: *
This package is auto-updated.
Last update: 2025-10-21 08:42:18 UTC
README
Laravel Routing Extender
This package extends Laravel's core routing services.
- Add support for optional parameters in the middle of routes using the macro
optionalParameterGroupas:
// In Routes/web.php: Route::optionalParameterGroup('hreflang', '^[a-z]{2}(?:\-[a-z]{2})?$', ['as' => 'Hreflang::'], function () { Route::get('home')->name('home'); }); // In YourCode.php: route('Hreflang::home', []); // Will return `/home` route('Hreflang::home', ['hreflang' => 'en-us']); // Will return `/en-us/home`
- Add support for custom route resolver in UrlGenerator by adding the macro
customRouteResolveras.
// In xxxProvider.php URL::macro('customRouteResolver', function($name, $parameters, $absolute): ?\Illuminate\Routing\Route { if ($name instanceof CustomClassA::class) { return $name->getRoute(); } if ($name instanceof CustomClassB::class) { return $name->generateRoute(); } return null; }); // In YourCode.php: route($instanceClassA); // Will generate the url from the Route object return by `$instanceClassA->getRoute()` route($instanceClassB); // Will generate the url from the Route object return by `$instanceClassB->generateRoute()`