9 juin 2024
Liste des commandes Symfony
Cette formation est là pour lister les différentes commandes nécessaires pour la création d'un projet Symfony ainsi qu'une mise en production de celui-ci.
Avant de créer un projet, il faut installer divers composants pour accéder au Symfony CLI.
Il faudra installer, scoop pour installer le Symfony CLI : https://scoop.sh
Dans un PowerShell en mode administrateur sur Windows (si vous êtes sur ce système d'exploitation) lancer les commandes suivantes :
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
Si l'installation de scoop rencontre un problème rendez-vous dans : https://github.com/ScoopInstaller/Install#for-admin et suivez le tutoriel pour votre système d'exploitation.
Pour installer divers composants dans la librairie de votre projet, vous aurez besoin de "Composer" : https://getcomposer.org/download/
Lors de l'installation de Composer, il vous sera demandé de choisir la version de PHP qu'il utilisera, choisissez la plus récente (8.2 à l'écriture de cette formation).
Installons GIT Bash (Invite de commande liée à linux pour Windows) : https://www.git-scm.com/downloads
Ouvrez un éditeur de code (exemple : Visual Studio Code), entrer dans le dossier où on va créer le projet, dans le terminal de votre éditeur choisissez GIT Bash puis entrer la commande :
scoop install symfony-cli
Désormais, vous avez le Symfony CLI d'installer. Vous n'aurez plus besoin de "php bin/console
" pour exécuter une commande Symfony.
1# Créer un nouveau projet
Pour créer un nouveau projet, il faut vous rendre dans le dossier qui comportera votre projet (exemple : User_06@DWWM-06 MINGW64 /c/xampp/htdocs/projet_test/ ), puis entrer la commande suivante si vous êtes sur une version de PHP ≥ à 8.2 :
symfony new nom_du_projet --version="7.0.*" --webapp
SI vous êtes sur une version antérieure à PHP 8.2 :
symfony new --webapp nom_du_projet
L'option --webapp
fournit les composants nécessaires pour commencer votre projet sans devoir installer de nouveau composant.
Pour entrer dans le dossier de votre projet :
cd nom_du_projet
Pour sortir d'un dossier :
cd ..
Maintenant, vous avez créé votre premier projet. Voyons voir une liste de commandes nécessaire pour ajouter des composants à votre projet.
2# Ajouter des composants
Ajouter le bundle webpack encore (permet de compiler vos assets CSS et JavaScript) :
composer require symfony/webpack-encore-bundle
2.1# NPM
Puis installons les composants “npm” :
npm install
Pour compiler les assets pour le déploiement : npm run build
| Pour compiler les assets pendant le développement (à ne pas arrêter avec CTRL+C sauf si vous avez terminé) : npm run watch
Mettre à jour la librairie “npm” :
npm update
2.2# COMPOSER
Installer un paquet pour l'ajouter à votre projet (site très connu pour trouver des paquets https://packagist.org) :
composer require nom_du_createur/nom_du_paquet
| (exemple : composer require stichoza/google-translate-php
)
Si vous récupérez le projet depuis votre github, il faudra réinstaller les composants de votre projet :
composer install
Et pour mettre à jour vos composants (si vous avez déjà des paquets d'installer cette commande les installera également) :
composer update
Supprimer un paquet installé :
composer remove nom_du_createur/nom_du_paquet
3# Les commandes Symfony
À la création de votre projet, il vous faudra divers fichiers pour avoir une structure complète (qui se base sur le MVC).
Les commandes qui vont suivent seront pour le Symfony CLI, si vous ne l'avez pas, je vous invite à l'installer et si vous n'en voulez pas, il faudra remplacer symfony
par php bin/console
Création d'un contrôleur (il vous ajoutera une page html.twig automatiquement) :
symfony console make:controller nom_du_contrôleur
Créer la base de données (nom pris depuis le fichier .env du projet) :
DATABASE_URL="postgresql://nom_utilisateur:[email protected]:5432</span>nom_de_la_bdd?serverVersion=15&charset=utf8"
symfony console d:d:c
Création d'une entité (table SQL) :
Créer une entité liée à la sécurité (souvent les utilisateurs) : symfony console make:user
Créer une entité hors de la zone de sécurité (autre table) : symfony console make:entity
Ajouter une colonne à votre table SQL :
symfony console make:entity nom_de_votre_entité
Prenons un exemple pour ajouter une colonne, j'ai une table SQL qui se nomme "user" et nous voulons ajouter une colonne à celle-ci :
symfony console make:entity user
Créer une migration pour créer un fichier qui va pouvoir créer ou mettre à jour votre table SQL (à chaque ajout de colonne faire une migration) :
symfony console make:migration
Migrer notre fichier “version” sur notre base donnée :
symfony console d:m:m
Pour lancer votre serveur Symfony et tester votre application (http://localhost:8000/ ) :
symfony serve
Pour arrêter votre serveur Symfony, il suffit de faire CTRL + C
ou dans un autre terminal :
symfony serve:stop
Sans le Symfony CLI :
php
-S
127
.0.0.1
:8000
-t
public
Une commande assez importante, surtout si vous rafraîchissez régulièrement votre projet, c'est celle de vider le cache :
symfony console c:c
Création d'un formulaire d'inscription :
symfony console make:registration-form
Création d'un formulaire de connexion :
symfony console make:auth
3.1# Préparer le déploiement
Symfony, utilise le fichier .env pour récupérer des variables d'environnement nécessaire au fonctionnement de votre projet (comme le MAILER_DSN). Lors du déploiement, il faut créer un fichier “local” de ce fichier :
composer dump-env prod
Il faudra également préparer votre projet en lui enlevant les paquets non-nécessaire (ceux seulement disponible en mode développement) :
composer install --no-dev --optimize-autoloader
Et pour finir, on met notre projet en production et on vide notre cache une dernière fois :
APP_ENV=prod APP_DEBUG=0 symfony console cache:clear
Mots clés:
Cours Du Dev
Recevez les dernières formations disponibles en vous inscrivant à la newsletter
Créé par arkunis