Laravel – Les Contrôleurs

Temps de lecture : 5 minutes environ.

Après avoir vu comment créer des routes et des modèles, nous allons voir comment créer les contrôleurs.

Pour rappel, le contrôleur est là pour faire l’interface entre la route, le modèle et la vue, en récupérant et en traitant les données et en les passant à la vue, qui se chargera de les afficher.

Dans un premier temps, nous allons créer la route en la déclarant dans le fichier routes/web.php

// Nous pouvons déclarer la route de la page d'accueil
// Celle-ci appellera la fonction home dans le contrôleur indexController
Route::get('/', 'indexController@home');

// Nous pouvons également utiliser des variables dans les routes (ici l'id d'un article)
// Celle-ci appellera la fonction article dans le contrôleur ArticlesController
Route::get('/articles/{id}', 'ArticlesController@article');

Pour créer un contrôleur, nous allons utiliser artisan. Exécutez la commande suivante dans l’invite de commande.

php artisan make:controller indexController

Ceci a pour effet de créer le fichier indexController.php dans le dossier app/Http/Controllers. Ce fichier contient les lignes suivantes.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class indexController extends Controller
{

}

Dans ce même fichier, nous allons créer notre fonction de contrôleur, qui gèrera l’affichage de notre page d’accueil

Cette fonction, stipulée dans la liste des routes devra s’appeler home

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class indexController extends Controller
{
public function home(){
return view('index'); // La fonction home ne fera, dans un premier temps, que retourner la vue de la page d'accueil
}
}

Dans un prochain tutoriel, nous traiterons des contrôleurs avancés.

Obtenir de l'aide

Pour obtenir de l'aide, vous pouvez accéder au serveur Discord pour une entraide par chat

Laravel – Les Contrôleurs
Article publié le

Catégories : MVC Laravel Tutoriel

Mots-clés : Controllers Framework Laravel MVC

Partager : Partager sur Facebook Partager sur Twitter Partager sur LinkedIn