{{tag>brouillon programmation internet php}} ---- {{tag> Programmation }} ---- {{ https://symfony.com/logos/symfony_black_03.svg?v=4}} ====== Symfony ====== Cette doc est au sujet de version obsolète, cf. [[https://symfony.com/releases]] **[[https://www.symfony.com/|Symfony]]** est un des framework PHP les plus utilisé. Il a une architecture MVC (Modèle Vue Controlleur), design patterns, l'abstraction de base de données, le mapping objet-relationnel avec Doctrine, le tests unitaires et fonctionnels, la gestion des URL, des formulaires, du cache, l'internationalisation et la génération des interfaces d'administration, etc. ===== Installation ===== ==== Version V4 ==== FIXME v5… v6 Installer tout d'abord le gestionnaire de dépendances PHP [[https://getcomposer.org/|Composer]]: sudo apt install composer Se définir propriétaire des répertoires associés pour permettre à //composer// de créer les //caches// sans utiliser //sudo// ((https://stackoverflow.com/questions/35874482/cannot-create-cache-directory-or-directory-is-not-writable-proceeding-withou#39295652)): sudo chown -R $USER $HOME/.composer puis aller dans le répertoire où vous voulez créer votre projet ($USER/workspace par exemple) puis installer le //squelette// de symfony: # application web composer create-project symfony/website-skeleton mon_projet # ou bien # micro-service, application console ou API composer create-project symfony/skeleton mon_projet Dans votre navigateur internet, l'url [[http://localhost:8000]] doit vous permettre d'atteindre la page d'accueil de votre projet === Problèmes et solutions === ===== Utilisation ===== Respectivement les commandes suivantes vous donnent l'aide et la version installée : symfony symfony -V ===== Extensions ===== Pour ajouter le gestionnaire de paquet **//Yarn//**: [[https://yarnpkg.com/lang/en/docs/install/#debian-stable]]\\ qui permet par exemple d'ajouter //bootstrap// [[https://symfony.com/doc/current/frontend/encore/bootstrap.html]] ===== Liens ===== Les tutoriels de developpez.com (qu'il vous faudra peut-être lire en entier) : * [[https://j-place.developpez.com/tutoriels/php/creer-premiere-application-web-avec-symfony2/]] * [[https://www.youtube.com/watch?v=UTusmVpwJXo]|tuto de Lior Chamla sur SF5 (1h, malheureusement install avec wamp :-(, suite payante]] * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LI|Introduction]] * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LIII|La création d'un projet]] * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LIV|Les fichiers de configuration]] * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LV|La base de données]] * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LVI|Les modules]] * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LVI|Les objets de base]] ===== Autres pages en lien avec les Symfony ===== - [[:programmation|Programmation]] - [[:tutoriel/demarrer_un_projet_web_avec_symfony|démarrer un projet web avec Symfony]] ---- //Contributeur(e)s : [[utilisateurs:_Enchained]], [[utilisateurs:lami|L'ami René]] (Mise en page)+(Autres pages en lien avec les sujets), [[utilisateurs:draco31.fr]], [[utilisateurs:Lenezir]], [[utilisateurs:YannUbuntu]], [[utilisateurs:bcag2]].//