Symfony 8 : Les Fondations Essentielles
Installation et configuration
Installation et configuration
Pour commencer à développer avec Symfony, la première étape est de mettre en place votre environnement de travail. Cela implique d'installer quelques outils essentiels qui simplifieront considérablement le processus de création et de gestion de votre projet.
Installer les outils nécessaires
Avant de créer un projet Symfony, vous avez besoin de deux éléments clés : PHP et Composer. Symfony 8 requiert PHP 8.3 ou une version plus récente.
L'autre outil indispensable est Composer. C'est le gestionnaire de dépendances pour PHP. Imaginez-le comme un assistant qui télécharge et gère toutes les bibliothèques de code (appelées paquets ou dépendances) dont votre projet a besoin pour fonctionner. Au lieu de télécharger manuellement chaque composant, vous déclarez simplement ce dont vous avez besoin, et Composer s'occupe du reste.
Pour installer Composer, suivez les instructions officielles sur getcomposer.org. L'installation est simple et bien documentée pour Windows, macOS et Linux.
En plus de Composer, il est fortement recommandé d'installer la CLI Symfony. C'est un outil en ligne de commande qui simplifie de nombreuses tâches courantes, comme la création de projets et le lancement d'un serveur de développement. Vous pouvez l'installer en suivant les instructions sur le site officiel de Symfony.
Création d'un projet Symfony
Une fois les outils installés, créer un nouveau projet Symfony est un jeu d'enfant. Ouvrez votre terminal (ou invite de commandes) et exécutez la commande suivante :
symfony new mon_projet --version="8.0.*" --webapp
Décortiquons cette commande :
symfony new mon_projet: Demande à la CLI Symfony de créer un nouveau projet dans un dossier nommémon_projet.--version="8.0.*": Spécifie que nous voulons la dernière version stable de Symfony 8.--webapp: Installe un ensemble de paquets de base adaptés au développement d'applications web traditionnelles. Cela inclut des composants comme le moteur de templates Twig et le framework de formulaires.
La CLI va maintenant télécharger le squelette de l'application et installer toutes les dépendances nécessaires avec Composer. Cela peut prendre une minute ou deux.
Configuration de l'environnement
Chaque application a besoin de configuration : identifiants de base de données, clés API, etc. Symfony gère cela de manière élégante et sécurisée grâce aux variables d'environnement.
Dans le répertoire racine de votre projet, vous trouverez un fichier .env. Ce fichier contient les configurations de base pour votre environnement de développement local.
# .env
# In all environments, the following files are loaded if they exist,
# the latter taking precedence over the former:
#
# * .env contains default values for the environment variables
# * .env.local uncommitted file with local overrides
# * .env.$APP_ENV committed environment-specific defaults
# * .env.$APP_ENV.local uncommitted environment-specific overrides
###> symfony/framework-bundle ###
APP_ENV=dev
APP_SECRET=a1b2c3d4e5f6a1b2c3d4e5f6
###< symfony/framework-bundle ###
###> doctrine/doctrine-bundle ###
# Format: postgresql://user:pass@127.0.0.1:5432/db_name?serverVersion=16&charset=utf8
DATABASE_URL="mysql://db_user:db_password@127.0.0.1:3306/db_name?serverVersion=13&charset=utf8mb4"
###< doctrine/doctrine-bundle ###
La variable la plus importante ici est DATABASE_URL. C'est là que vous configurerez la connexion à votre base de données locale. Par exemple, si vous utilisez MySQL avec un utilisateur root sans mot de passe, et que votre base de données s'appelle mon_projet_db, vous la modifieriez comme ceci :
DATABASE_URL="mysql://root:@127.0.0.1:3306/mon_projet_db?serverVersion=8.0&charset=utf8mb4"
Le fichier .env est versionné avec votre code, mais il est conseillé de placer les informations sensibles (comme les mots de passe de production) dans un fichier .env.local, qui est ignoré par Git et reste uniquement sur votre machine.
Lancer le serveur web
Symfony est fourni avec son propre serveur web intégré, parfait pour le développement. Il est plus performant et mieux configuré pour Symfony que les serveurs PHP génériques.
Pour le démarrer, naviguez dans le répertoire de votre projet avec votre terminal et lancez la commande suivante :
symfony server:start
Cette commande démarre le serveur en arrière-plan. Vous devriez voir un message vous indiquant l'adresse sur laquelle votre application est accessible, généralement https://127.0.0.1:8000.
Ouvrez cette URL dans votre navigateur. Vous serez accueilli par la page de bienvenue de Symfony, confirmant que tout est correctement installé et configuré. Pour arrêter le serveur, utilisez simplement la commande symfony server:stop.
Quels sont les deux outils fondamentaux requis sur votre système avant de pouvoir créer un projet Symfony ?
Dans quel fichier est-il recommandé de stocker les informations de configuration sensibles (comme les mots de passe de production) pour qu'elles ne soient pas versionnées avec Git ?
