A - Environnement de travail

1°) Editeur de code

VSCode avec les extensions suivantes : Symfony for VSCode - Twig Language - PHP Namespace Resolver - PHP Intelephense

Code > Réglages > Extensions

Installer les extensions suivantes :
- PHP DocBlocker
- PHP Intelephense
- PHP Namespace Resolver
- Twig language
- Twig (Syntax highlighting for PHP Twig)

1°) Le client Symfony

cd C:\\nchp\\usr\\local\\nchp\\ezged\\www3.src\\sf\\app
c:\\nchp\\Apache24\\php7\\php bin/console --version
c:\\nchp\\Apache24\\php7\\php bin/console cache:clear OU c:\\nchp\\Apache24\\php7\\php bin/console c:c
C:\\nchp\\Apache24\\php\\php.exe C:\\nchp\\usr\\local\\nchp\\ezged\\www\\sf\\app\\bin\\console c:c

c:\\nchp\\Apache24\\php7\\php bin/console make:list
symfony console list make
which symfony : /usr/local/bin/symfony

2°) Docker

cd /Volumes/\\[C\\]\\ Windows\\ 11/nchp/usr/local/nchp/ezged/www3.src/sf
docker-compose up -d --build
docker-compose exec php /bin/bash

B - La structure de Symfony

Grosse nouveauté : L’ensemble de vos développements spécifiques doit être stocké dans le dossier override Sa structure ressemble à celle de Symfony : config - src - templates - var Le namespace dans les controllers doit être modifié : namespace App\Controller par namespace Override\Controller Les templates doivent être intégrés ainsi : return $this->render('**@override/**index.html.twig', []); au lieu de return $this->render('index.html.twig', []); Le fichier .env doit absolument être présent dans le dossier override

1°) La structure des dossiers

Dossier Bin

Ce dossier contient les fichiers de commandes permettant d’effectuer des actions sur un projet Symfony. Par exemple, de vider le cache Symfony ou mettre à jour la base de données. Pour afficher toutes les commandes Symfony disponible on utilise généralement la commande php bin/console ou c:\nchp\Apache24\php7\php bin/console

Dossier Config

Toute la configuration des packages, services et routes se fera dans ce dossier. Les fichiers de configuration sont par défaut en YAML, même s’il est tout à fait possible d’utiliser PHP ou XML. Cela permettra par exemple de configurer notre connexion à la base de données, mettre en place tout un système de sécurité, ou encore personnaliser nos services.

Dossier public

C’est le point d’entrée de l’application, chaque requête passe forcément par ce dossier et le fichier index.php. C’est un dossier accessible par tous, il est généralement utilisé pour mettre à disposition des fichiers de ressources tel que les images.

Dossier SRC

C’est le cœur du projet ! C’est le dossier qui contient la logique de votre application.