Vous êtes sur la page 1sur 16

Laravel

Crash
Course

Abdoulaye DIENG Dec 2023


Objectif général
Savoir développer efficacement (rapidité, facilité,
bonnes pratiques, …) une application Web avec l’un
des frameworks PHP les plus utilisés
Objectifs pédagogiques
• Faire correspondre une URL donnée à un traitement précis
grâce au routage
• Regrouper des traitements connexes grâce aux contrôleurs
• Récupérer les données d’une requête http grâce à Request
• Retourner des contenus aux formats texte, JSON, etc. grâce
à Response
• Créer, mettre à jour et suivre les évolutions d’un schéma de
base de données grâce aux migrations
• Faciliter la communication avec une base de données grâce
à Eloquent
Sommaire
1) Préliminaires
2) Routage
3) Contrôleurs
4) Requêtes
5) Réponses
6) BDD
Préliminaires
Qu’est ce que Laravel ?
• Problématiques
Comment développer efficacement (rapidité, facilité,
bonnes pratiques, …) une application Web ?
• Solution : ensemble de composants et de préconisations
« prêt à l’emploi » = Framework
• Laravel est un Framework PHP créé par Taylor Otwell en juin
2011
• Projet PHP le mieux noté de GitHub en 2016
• Laravel reste basé sur Symfony pour au moins 30 % de ses
lignes

5
Préliminaires
prérequis pour installer Laravel

• Version de PHP (CLI) >= 8.0 pour Laravel 9


• Activer les extensions PHP suivantes
• BCMath
• Ctype
• Fileinfo
• JSON
• Mbstring
• OpenSSL
• PDO
• Tokenizer
• XML
6
Préliminaires
Installation de Laravel sous Windows avec Composer
1) S’assurer qu’un exécutable php est accessible globalement :
chemin d’accès présent dans le PATH
2) Télécharger (https://getcomposer.org/Composer-Setup.exe) et
exécuter Composer-Setup.exe
3) Créer un nouveau projet Laravel
composer create-project laravel/laravel nomDuProjet
Exemple : créez le projet nommé « classroom-laravel »
4) Démarrer le projet avec les commandes :
cd nomDuProjet/ puis php artisan serve
5) Accéder à la page d’accueil de Laravel à l’adresse
http://localhost:8000/

7
Préliminaires
Installation de Laravel sous Mac et Linux avec Composer
1) S’assurer qu’un exécutable php est accessible globalement
2) Télécharger la dernière version du composer.phar
https://getcomposer.org/download/
3) Rendre globale puis exécutable la commande composer
cp chemin/vers/composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
4) Créer un nouveau projet Laravel
composer create-project laravel/laravel nomDuProjet
Exemple : créez le projet nommé « classroom-laravel »
5) Démarrer le projet avec les commandes :
cd nomDuProjet/ puis php artisan serve
6) Accéder à la page d’accueil de Laravel à l’adresse
http://localhost:8000/
8
Préliminaires
MVC
Routage
présentation
• Pbl : comment accéder à notre application ?
• Sol : définir des routes

• Routage = faire correspondre une URL donnée à un traitement


précis
• Intérêt : avoir de belles URL pour un bon référencement Web et
un confort des visiteurs
Ex : /read/intro-to-laravel au lieu de index.php?article_id=57
• Définition d’une route = motif d’un path d’URL + traitement

10
Routage
définition
• Emplacement
fichier « route/web.php »

• Syntaxe
Route::methodHTTP('chemin', closure);

• Exemple
Route::get('/', function () {
return view('welcome');
});

11
Routage
paramètre de route
• Pb : peut-on se servir du chemin pour envoyer des données ?
• Sol : un segment variable du chemin
• Paramètre de route = segment variable du path
• Syntaxes d’ajout du paramètre
1) Suffixer {nomParametre} au path
2) Passer $nomParametre en paramètre à la fonction de
rappel
• Exemple (ajouter dans route/web.php)

• Avec un navigateur, tester les chemins


 /hello/VotrePrenom
 /hello 12
Routage
paramètre optionnel de route
• Syntaxes d’ajout du paramètre optionnel
1) Suffixer {nomParametre?} au path
2) Passer $nomParametre = valeurParDefaut en paramètre
à la fonction de rappel

• Exemple

• Tester les chemins


 /hello/VotrePrenom
 /hello
13
Routage
route nommée
• Les routes nommées permettent la génération d’URL et la
redirection

• Pour nommer une route, il suffit de chaîner la méthode name()


à sa définition

• Exemple

14
Routage
génération d’URL et redirection
• La génération d’URL permet
 d’éviter de « hardcoder » (écrire manuellement) les valeurs
des href dans les templates
 lorsqu’une URL a changé, de modifier juste la définition de la
route
• Syntaxes de la génération d’une URL
 $url = route('nomDeLaRoute');
 Avec paramètre(s)
route('nomDeLaRoute',['param' => valeur, …])
• Syntaxes d’une redirection
 redirect()->route('nomDeLaRoute');
 redirect()->route('nomDeLaRoute', ['param'=>valeur, …]);

15
Routage
génération d’URL et redirection - Exemple
On rappelle que « hello » est le nom de la route de chemin
« /hello/{prenom?} »
1) Dans route/web.php, au niveau de la route de chemin « / »,
remplacez « view('welcome') » par
redirect()->route('hello',['prenom'=>'Redirected User'])
2) Testez le chemin /

16

Vous aimerez peut-être aussi