langaner / route-priority by langaner

Package to add priority to Laravel 5 routes
4,336
7
2
Package Data
Maintainer Username: langaner
Maintainer Contact: krashgt@gmail.com (Langaner)
Package Create Date: 2016-03-15
Package Last Update: 2022-08-18
Language: PHP
License: MIT
Last Refreshed: 2024-04-19 15:05:43
Package Statistics
Total Downloads: 4,336
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 7
Total Watchers: 2
Total Forks: 8
Total Open Issues: 4

Package to add priority to Laravel 5 routes

Latest Stable Version Total Downloads Latest Unstable Version License

Installation

  1. Add langaner/route-priority to composer.json.

    "langaner/route-priority": "dev-master"

2)Run composer update to pull down the latest version of the package.

3)Now open up app/config/app.php and add the service provider to your providers array.

Langaner\RoutePriority\RoutePriorityServiceProvider::class,

4)Add the trait to App\Http\Kernel

use \Langaner\RoutePriority\RouterTrait;

Usage

Change routes priority:

Route::get('test', ['uses' => 'Controller@showAction'])->setPriority(100);

Default Priority

Default priority is 50. Higher priority - values from 50 and above, lower priority - 49 and below.

Usage example

Route::get('/test/{slug}', …);
Route::get('/test/hello', …);

In this example second route will not work. Add priority 0 to the first route will fix the error:

Route::get('/test/{slug}', …)->setPriority(0);
Route::get('/test/hello', …);

Second route now has higher priority.

Group priority

You can put priority to groups:

Route::group(['prefix' => 'test-group', 'priority' => 10], function () {
	Route::get('/test/hello', function () {
	    return 'First group';
	});
});

Route::group(['prefix' => 'test-group', 'priority' => 20], function () {
	Route::get('/test/hello', function () {
	    return 'Second group';
	});
});

Second group has higher priority then First group. All routes in the group will has the same priority as the group.