Eléments requis avant l'installation
Avant d'installer Symfony 5, vous devez :
- Installer PHP v7.2.5 ou supérieur et ces extensions PHP (qui sont installées et activées par défaut dans la plupart des installations PHP 7) : Ctype, iconv, JSON, PCRE, Session, SimpleXML et Tokenizer;
- Installer Composer, qui est utilisé pour installer les packages PHP;
- Installez Symfony, qui crée dans votre ordinateur un binaire appelé symfony qui fournit tous les outils dont vous avez besoin pour développer votre application localement.
Le binaire symfony fournit un outil pour vérifier si votre ordinateur répond à ces exigences. Ouvrez votre console de terminal et exécutez cette commande :
symfony check:requirements
Créer sa première application
Ouvrez votre console de terminal et exécutez l'une de ses commandes suivantes :
symfony new nom_de_mon_projet --full
symfony new nom_de_mon_projet
La seule différence entre ces deux commandes est le nombre de packages installés par défaut. L'option --full installe tous les packages dont vous avez généralement besoin pour créer des applications Web, mais la taille des données installées sera plus grande.
Si vous ne pouvez pas ou ne voulez pas installer Symfony pour une raison quelconque, exécutez ces commandes pour créer la nouvelle application Symfony à l'aide de Composer :
composer create-project symfony/website-skeleton nom_de_mon_projet
composer create-project symfony/skeleton nom_de_mon_projet
Quelle que soit la commande que vous exécutez pour créer l'application Symfony. Tous créeront un nouveau répertoire nom_de_mon_projet/, y téléchargeront certaines dépendances et généreront même les répertoires et fichiers de base dont vous aurez besoin pour commencer. En d'autres termes, votre nouvelle application est prête!
Les répertoires du cache et des journaux du projet (par défaut, nom_de_mon_projet/var/cache/ et nom_de_mon_projet/var/log/) doivent être accessibles en écriture par le serveur Web. Si vous avez un problème, lisez comment configurer les autorisations pour les applications Symfony.