Blade FR MMI
HugoDemont62
Posted on May 22, 2024
Salut et bienvenue dans ce cours sur Blade. Même si on ne va pas suivre exactement la documentation officielle de Blade, elle reste une bonne référence. Dans ton projet Instagram, tu vas retrouver différentes choses :
config/blade.php
: Ce fichier s'occupe de la configuration de Blade, le moteur de templates de Laravel. Il initialise le moteur de templates, définit les chemins vers les fichiers de vue et le cache, et enregistre l'extension de fichier pour les templates Blade.resources/views/index.blade.php
: C'est la page d'accueil de ton application. Elle étend le layoutapp
et définit une sectioncontent
. Dans cette section, elle affiche un titre (qui est une variable passée à la vue), un message de bienvenue et un lien vers la page 2.resources/views/page2.blade.php
: C'est une autre page de ton application. Elle étend également le layoutapp
et définit une sectioncontent
. Dans cette section, elle affiche un message indiquant que c'est la page 2.resources/views/layouts/app.blade.php
: C'est le layout principal de ton application. Il contient la structure HTML de base de tes pages, y compris les balises<head>
et<body>
, et définit un emplacement (@yield('content')
) où les vues individuelles peuvent insérer leur contenu.
Le fonctionnement global est le suivant : lorsque tu affiches une vue (par exemple, index
ou page2
), Blade cherche d'abord le fichier correspondant dans le répertoire des vues. Ensuite, il évalue ce fichier comme un template Blade, ce qui signifie qu'il remplace les directives Blade (comme @extends
, @section
, et {{ $variable }}
) par leur équivalent PHP. Si la vue étend un layout, Blade remplace l'instruction @yield
dans le layout par le contenu de la section correspondante de la vue. Enfin, le résultat est envoyé au navigateur.
Note que toutes les vues partagent le même layout (app
), ce qui signifie qu'elles ont toutes la même structure de base. Cela permet d'éviter la duplication de code et de rendre l'application plus facile à maintenir.
Dans ton fichier index.php
(à la racine), tu vérifies d'abord si une action a été définie dans l'URL. Si aucune action n'est définie, tu définis l'action par défaut sur "index". Ensuite, tu vérifies si l'action demandée existe dans le tableau $listeDesActions
que tu as défini dans config/actions.php
. Si l'action n'existe pas, tu affiches une page d'erreur 404. Si l'action existe, tu inclus le fichier PHP correspondant à cette action.
Dans le cas de l'action "index", le fichier PHP correspondant est actions/index.php
. Dans ce fichier, tu définis une variable $monTitre
et tu utilises le moteur de templates Blade pour afficher la vue "index" avec cette variable.
Voici comment tu pourrais réécrire le code de actions/index.php
pour le rendre plus clair :
<?php
// Définir le titre de la page
$titreDeLaPage = "Mon super titre";
// Utiliser le moteur de templates Blade pour afficher la vue "index"
// Passer la variable titreDeLaPage à la vue
echo $blade->make("index", ["titre" => $titreDeLaPage])->render();
?>
Dans ce code, j'ai simplement renommé la variable $monTitre
en $titreDeLaPage
pour rendre son but plus clair. J'ai également ajouté des commentaires pour expliquer ce que fait chaque ligne de code.
Posted on May 22, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
November 30, 2024
November 30, 2024