formations / symfony / installer-symfony-creer-un-projet
Installer Symfony & créer un projet
Installer Symfony CLI et créer un premier projet.
Choisir entre version courante et version LTS (Long Term Support) d'après la roadmap officielle au regard du projet que l'on doit servir.
Installer et configurer Symfony
Installation de la CLI :
Même si son installation reste "optionnelle" dans la documention officielle, la CLI de Symfony se doit d'être installée.
Plusieurs méthodes sont possible, soit en passant par Scoop, qu'il faudrat installer.
Le lien permettant d'installer via Scoop ou encore de télécharger et d'installer manuellement Symfony sur votre machine.
Personnellement, je vais choisir de télécharger l'executable et le placer dans l'emplacement de mon choix sur mon disque.
Décompresser le contenu du fichier zip téléchargé dans un dossier du disque du, comme ici le contenu du fichier.zip à été décompressé dans le dossier "Program Files", un dossier nommé symfony a été créé à cet effet.
Il faut maintenant déclarer cet exécutable en tant que variable d'environnement. On recherche "variables d'environnement" dans Windows
Lorsqu'on a recherché "variables d'environnement" dans Windows on procède ensuite comme suit :
- On ouvre la fenêtre des variables d'environnement avec le bouton en bas à droite de la fenêtre des propriétés système
- On édite par un doucle click la ligne "path" pour ouvrir la fenêtre "Modifier la variable d'environnement".
- On clique sur nouveau pour en ajouter une
- A l'aide du bouton parcourir on pointe le dossier contenant "symfony.exe"
- On ajoute ce chemin dans les variables d'environnement. Maintenant on peut utiliser la commande "symfony" depuis n'importe quel terminal.
Configuration :
Pour pouvoir utiliser le framework Symfony de Sensiolabs, il faut avoir un environnement de développement installée incluant une version de serveur Apache et de serveur MySql offrant :
- Pour la version 5.x (LTS) :
Un émulateur offrant une version de Php 7.2.5 ou supérieure.
- Pour la version 6.X :
Un émulateur offrant une version de Php 8.1 ou supérieure.
Si vous n'avez pas d'émulateur Apache dans votre envirronement regardez notre tuto traitant du sujet.
Pour plus informations, le lien vers la page d'installation du site officiel.
Comment choisir sa version
Sensiolabs maintient toujours plusieurs version en même temps. Il existe une version et une version en LTS (Long Term Support). Suivant les attentes du projet, il faudra choisir...
Personellement j'obte souvant pour la version LTS lorsqu'il s'agit de projets aux long-court dans lequel nous n'aurons qu'à faire des mise à jour mineures.
En se basant sur la page officielle du site de Symfony, on voit nettement l'impact de choix entre la version courante et la version LTS quant au maintient du débug et la mise à jour de sécurité.
Voici une illustration de comment SensioLabs envisage le déploiement des prochaines versions de Symfony.
Comme on peut le voir, la LTS est bien la version 5.4.*.
Créer un projet
Lorsque l'on a acté la version que l'on va utiliser, avec Visual Stutio Code, ouvrir le dossier d'émulation de l'émulateur instatté sur la machine (www avec WampServer, htdocs sur Xmap) et depuis la racine de ce dossier, lancer la commande :
symfony new tuto-project --webapp --version=5.4
Dans la commande ci-dessus nous utilisons plusieurs options
--webapp ( anciennement --full) : cette options permet de créer un projet Symfony en incluant le téléchargement d'un premier "pack" de "vendor" (pachages php) permettant d'avoir un "set" de départ pour commencer la mise en oeuvre de sites web. Sans cette option, une version "minimaliste" de Symfony est installée. Dédiée aux "microservices", il nous faudra alors ajouter chacun des "vendors" au besoin.
--version=5.4 : Dans ce cas, à l'aide de cette option on demande la création d'un projet dans la dernière version LTS (Long Term Support), à ce jour la 5.4
Voila, nous avons créé un nouveau projet, il nous reste "juste" à ouvrir le dossier du projet avec le menu fichier de Visual Studio Code et d'analyser la structure de dossiers réalisée lors de la création du projet et le MCD de Symfony.
Tutos du jour
PhpMyAdmin - Les bases de données
phpMyAdmin est un outil d'administration de base de données pour MySQL et MariaDB.
Voir le tuto