Hey there! This tutorial guides you through the process of retrieving a comprehensive list of all routes in a Laravel 10 application. Throughout this article, we will cover the implementation of a method to list routes in Laravel 10.
The example provided will demonstrate how to obtain a complete list of routes using Laravel 6, Laravel 7, Laravel 8, Laravel 9, and Laravel 10 versions.
I will illustrate a straightforward example of how to acquire a complete list of routes within a Laravel application. The key to this lies in utilizing the getRoutes()
function of the Route facade, which efficiently fetches the list of all routes.
Without further delay, let's dive into the simple step-by-step process to retrieve and display the Laravel routes list.
Create a route into the web.php file. So, add the below code to that file.
routes/web.php
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\TestController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('get-all-routes', [TestController::class, 'getAllRoutes']);
Use the Artisan command to generate a new controller. Let's name it TestController
.
php artisan make:controller TestController
Open the newly created TestController.php
file in the app/Http/Controllers
directory.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
class TestController extends Controller
{
/**
* Write code on Method
*
* @return response()
*/
public function getAllRoutes(Request $request)
{
$allRoutes = Route::getRoutes();
return view('all-routes', compact('allRoutes'));
}
}
If you want to display the routes in a web page, create a Blade view. For example, create a file named all-routes.blade.php
in the resources/views
directory:
<!DOCTYPE html>
<html>
<head>
<title>How to Get All Routes in Laravel 10 - Websolutionstuff</title>
</head>
<body>
<h1>All Routes</h1>
<table border="1">
<thead>
<tr>
<th>Method</th>
<th>URI</th>
<th>Name</th>
<th>Action</th>
</tr>
</thead>
<tbody>
@foreach ($allRoutes as $route)
<tr>
<td>{{ $route->methods()[0] }}</td>
<td>{{ $route->uri() }}</td>
<td>{{ $route->getName() }}</td>
<td>{{ $route->getActionName() }}</td>
</tr>
@endforeach
</tbody>
</table>
</body>
</html>
Visit the URL /all-routes
in your browser to see a table displaying all routes along with their methods, URIs, names, and actions. And also, you can add middleware.
This method allows you to programmatically retrieve all routes within your Laravel application without using an Artisan command directly.
You might also like:
In this article, we will see 10 steps to becoming a laravel expert. Here, we will learn about how to become a larav...
May-26-2023
Hello, laravel web developers! In this article, we'll see how to create a dependent dropdown in laravel 11 Livewire....
Jun-03-2024
In this example, we will delve into the process of performing file uploads using Node.js. This tutorial will provide you...
Jul-26-2021
In this guide, I'll walk you through how to optimize a Laravel 11 application for serverless deployment on AWS Lambd...
Sep-25-2024