• €199,99 ou 3 paiements mensuels de €66,66

Symfony 4 : les fondamentaux par la pratique

🎶 Initiation à Symfony 4 en 20H par Lior Chamla

✨ Best seller sur Udemy

Cette formation a été suivie par près de 800 étudiants sur Udemy et notée 5 étoiles (⭐⭐⭐⭐⭐) !

Créer un site d'annonce avec interface d'administration pour apprendre tous les fondamentaux du Framework PHP Symfony 4

On n'apprend jamais mieux que par la pratique. Cette formation destinée à tous les développeurs qui veulent en savoir plus sur le Framework Symfony 4 vous permettra de créer étape après étape un véritable site d'annonces sur lequel les utilisateurs pourront :
  • S'inscrire, s'authentifier et gérer leur compte
  • Créer des annonces afin de mettre en location leur bien
  • Réserver une location 
  • Commenter et noter l'annonce après que la location ait eu lieu
De  plus, le site fournira aux administrateurs une véritable interface de gestion sécurisée. On passera donc par l'ensemble des étapes classiques de la création d'une application web.

Les notions sont distillées tout au long des vidéos et ne sont abordées que lorsqu'on en a vraiment besoin et qu'on peut donc les mettre immédiatement en pratique.

Alors embarquez avec moi pour ces 20 heures de vidéo et devenez un véritable développeur Symfony 4, vous aurez alors des bases solides pour continuer par vous même votre apprentissage de toutes les subtilités du Framework !

Ce que vous allez apprendre

  • Développer une application Symfony complexe
  • Maîtriser le concept de Controllers et de Routes paramétrées ou pas
  • Maîtriser le langage de templating Twig et ses subtilités
  • Utiliser le composant Form pour créer des formulaires riches et des sous-formulaires
  • Utiliser des DataTransformers pour formater des données vers et depuis un formulaire

  • Créer des jeux de fausses données grâce aux Fixtures
  • Utiliser le composant Security pour sécuriser les pages, gérer les rôles et l'authentification des utilisateurs
  • Personnaliser les pages d'erreurs les plus communes
  • Comprendre la notion et l'utilité des Services
  • Construire un système de pagination de A à Z
  • Déployer une application Symfony sur différents types de serveurs (mutualisé ou container)

  • Mettre en place des validations de formulaire
  • Comprendre Doctrine et la liaison avec la base de données
  • Construire une base de données pas à pas grâce aux entités et au système de migrations
  • Créer des requêtes complexes grâce au DQL (Doctrine Query Language)

Contenu

Introduction

Qu'est-ce que Symfony 4 et pourquoi l'utiliser ?
  • 4 mins
  • 60,8 Mo
Aperçu
Ce qu'on va faire ensemble, ce que ça va vous apporter
  • 5 mins
  • 144 Mo
Aperçu
Les outils nécessaires pour suivre la formation
  • 2 mins
  • 20,6 Mo
Aperçu
Mettre en place l'environnement de travail
    Aperçu
    Mettre en place VSCode pour travailler !
      Aperçu
      A l'attention des étudiants qui utilisent AdBlock et autres extensions
        Tirez profit au maximum de cette formation !
        • 3 mins
        • 44,9 Mo
        Aperçu

        Premiers pas : mise en place de notre application Symfony 4

        Avant de commencer : sortie de Symfony 5
          Créons notre projet Symfony 4 avec Composer !
          • 5 mins
          • 82,8 Mo
          Aperçu
          Découverte de la structure d'une application Symfony 4
          • 7 mins
          • 199 Mo
          Aperçu
          Introduction : le concept de Controller au sein d'une application Symfony 4
          • 4 mins
          • 53,8 Mo
          Aperçu
          Créons notre premier Controller : le HomeController
          • 7 mins
          • 171 Mo
          Séparer les traitements et l'affichage grâce à Twig
          • 5 mins
          • 89,1 Mo
          Les avantages du langage de templating Twig
          • 2 mins
          • 19,6 Mo
          Aperçu
          Comprendre Twig : L'interpolation (afficher une variable)
          • 3 mins
          • 40,4 Mo
          Comprendre Twig : les structures de contrôle (conditions et boucles)
          • 12 mins
          • 206 Mo
          Comprendre Twig : les commentaires
          • 2 mins
          • 26,9 Mo
          Comprendre Twig : les filtres
          • 3 mins
          • 41,8 Mo
          Routes paramétrées & routes multiples : des adresses dynamique porteuses de sens
          • 9 mins
          • 156 Mo
          Comprendre Twig : générer une URL avec la fonction path()
          • 6 mins
          • 108 Mo
          Comprendre Twig : l'héritage de gabarit (extends)
          • 10 mins
          • 214 Mo
          Mise en place d'un thème Bootstrap
          • 8 mins
          • 234 Mo
          Mise en place de la barre de navigation
          • 4 mins
          • 87,7 Mo
          Mise en place finale de la page d'accueil de notre application
          • 13 mins
          • 249 Mo
          Versionning de notre avancement avec GIT
          • 1 min
          • 18,3 Mo
          Quiz : Démarrage avec Symfony 4

            Relations avec la base de données

            Introduction : la relation aux bases de données avec Symfony et Doctrine
            • 6 mins
            • 81,1 Mo
            Aperçu
            Création de la base de données grâce à la CLI
            • 3 mins
            • 56,8 Mo
            Comprendre Doctrine : créons notre première Entité pour représenter les annonces
            • 6 mins
            • 111 Mo
            Aperçu
            Comprendre Doctrine : notre premier script de migrations
            • 5 mins
            • 125 Mo
            Comprendre Doctrine : créer des jeux de fausses données avec les Fixtures
            • 8 mins
            • 157 Mo
            Rendre nos fausses données plus réalistes avec Faker
            • 8 mins
            • 234 Mo
            Créer des slugs facilement avec Slugify
            • 5 mins
            • 126 Mo
            Comprendre Doctrine : interagir avec le cycle de vie des Entités
            • 7 mins
            • 194 Mo
            Comprendre Doctrine : les relations entre Entités avec l'Entité Image
            • 9 mins
            • 151 Mo
            Enrichir la Fixture pour créer des images
            • 4 mins
            • 110 Mo

            Notre premier Controller : le AdController pour la gestion des annonces

            Affichage de la liste des annonces
            • 7 mins
            • 120 Mo
            Récupération des annonces grâce au Repository Doctrine
            • 7 mins
            • 150 Mo
            Comprendre l'Injection de Dépendances
            • 8 mins
            • 189 Mo
            Récupération d'une annonce avec son slug grâce au Repository
            • 8 mins
            • 115 Mo
            Affichage d'une annonce
            • 7 mins
            • 108 Mo
            Un peu de CSS personnalisé
            • 4 mins
            • 104 Mo
            Parcourir les images liées à une annonce grâce à la relation entre les 2 entités
            • 9 mins
            • 326 Mo
            Mise à jour de la barre de navigation
            • 2 mins
            • 39,8 Mo
            Liens paramétrés dans la liste des annonces
            • 3 mins
            • 78,2 Mo
            Comprendre Twig : utiliser une variable Twig pour factoriser un code
            • 3 mins
            • 57,1 Mo
            Comprendre le ParamConverter de Symfony 4
            • 6 mins
            • 142 Mo

            Symfony et les formulaires

            Créer la page de création d'une annonce
            • 4 mins
            • 52,8 Mo
            Découverte du FormBuilder : le fabricant de formulaire
            • 5 mins
            • 72,2 Mo
            Aperçu
            Comprendre Twig : afficher un formulaire Symfony
            • 9 mins
            • 184 Mo
            Créer une classe de Formulaire externe et réutilisable
            • 4 mins
            • 69,6 Mo
            Comprendre Twig : les fonctions d'affichage de formulaire
            • 3 mins
            • 54,6 Mo
            Comprendre Twig : mise en forme du formulaire
            • 4 mins
            • 69,9 Mo
            Comprendre Twig : les thèmes de formulaires
            • 9 mins
            • 157 Mo
            Comprendre Twig : le thème de formulaire Bootstrap 4
            • 4 mins
            • 91,9 Mo
            Configurer les champs de formulaire
            • 10 mins
            • 235 Mo
            ALERTE SYMFONY 5
              Récupérer et sauvegarder les données du formulaire
              • 8 mins
              • 151 Mo
              Effectuer une redirection vers la page de la nouvelle annonce
              • 3 mins
              • 42,1 Mo
              Utiliser les messages Flash pour notifier le visiteur
              • 11 mins
              • 207 Mo
              Comprendre Twig : les inclusions de template
              • 4 mins
              • 119 Mo

              Aller plus loin avec les formulaires

              Créer des sous-formulaire avec les CollectionType
              • 8 mins
              • 172 Mo
              Comprendre Twig : personnaliser l'affichage des sous-formulaires
              • 7 mins
              • 120 Mo
              Ajouter un élément dynamiquement grâce au prototype du CollectionType
              • 8 mins
              • 192 Mo
              Supprimer un élément dynamiquement grâce au CollectionType
              • 7 mins
              • 144 Mo
              Faire persister les éléments liés avec le CollectionType
              • 5 mins
              • 113 Mo
              Correction d'un bug sur les index des sous-formulaires
              • 4 mins
              • 96,1 Mo
              Rendre le champ "slug" non obligatoire (option required)
              • 4 mins
              • 83,5 Mo
              La validation de formulaire avec Symfony
              • 8 mins
              • 199 Mo
              Valider l'unicité d'une entité et éviter les doublons !
              • 4 mins
              • 93,5 Mo
              Créer un formulaire d'édition pour nos annonces
              • 9 mins
              • 234 Mo
              Valider les sous-formulaires du CollectionType
              • 5 mins
              • 99,8 Mo
              Correction d'un bug lors de la suppression d'éléments du CollectionType
              • 5 mins
              • 142 Mo
              Refactorisation du code entre les formulaire de création et d'édition
              • 6 mins
              • 150 Mo
              Versionning de notre avancement avec GIT
              • 2 mins
              • 26 Mo

              Les utilisateurs et l'authentification dans Symfony

              Création d'une entité User pour stocker nos utilisateurs
              • 5 mins
              • 83,9 Mo
              La relation OneToMany entre les annonces (Ad) et les utilisateurs (User)
              • 6 mins
              • 163 Mo
              Mise à jour de la Fixture pour créer de faux utilisateurs
              • 7 mins
              • 195 Mo
              Des avatars aléatoires pour nos faux utilisateurs avec RandomUser.me
              • 6 mins
              • 137 Mo
              Aperçu
              L'encodage des mots de passe de nos utilisateurs
              • 5 mins
              • 123 Mo
              Découverte de l'interface UserInterface
              • 6 mins
              • 148 Mo
              Authentification : déclare un nouveau provider (entité User)
              • 3 mins
              • 58,5 Mo
              Aperçu
              Authentification : créer le formulaire de connexion
              • 8 mins
              • 134 Mo
              Authentification : authentifier réellement l'utilisateur
              • 5 mins
              • 79,8 Mo
              Authentification : permettre à l'utilisateur de se déconnecter
              • 4 mins
              • 53,8 Mo
              Authentification : repérer les erreurs avec la classe AuthenticationUtils
              • 5 mins
              • 77,7 Mo
              Créer le formulaire d'inscription : le RegistrationType
              • 9 mins
              • 183 Mo
              Refactorisation du code entre les classes AdType et RegistrationType
              • 4 mins
              • 99,3 Mo
              Enregistrer les données du formulaire d'inscription
              • 6 mins
              • 137 Mo
              Valider le formulaire d'inscription
              • 5 mins
              • 101 Mo
              Créer une confirmation de mot de passe durant l'inscription
              • 5 mins
              • 119 Mo
              Mise à jour de la barre de navigation
              • 3 mins
              • 61,8 Mo
              Créer un formulaire d'édition du profil utilisateur
              • 8 mins
              • 135 Mo
              Créer un formulaire de modification du mot de passe
              • 11 mins
              • 208 Mo
              Sauvegarder le nouveau mot de passe
              • 9 mins
              • 189 Mo
              Créer une erreur personnalisée sur le formulaire de modification de mot de passe
              • 6 mins
              • 149 Mo

              Intégration des utilisateurs dans le reste du site

              Afficher l'auteur dans la page d'une annonce
              • 8 mins
              • 258 Mo
              Créer une page de profil pour les utilisateurs
              • 12 mins
              • 263 Mo
              Faire les liens vers la page de profil d'un utilisateur
              • 2 mins
              • 51,9 Mo
              Créer la page "Mon compte"
              • 3 mins
              • 49 Mo
              Ajouter des liens de gestion du compte utilisateur
              • 4 mins
              • 75,4 Mo
              Mise en place d'une dropdown dans la barre de navigation
              • 7 mins
              • 140 Mo
              Prendre en compte l'utilisateur connecté lorsqu'on créé une annonce
              • 4 mins
              • 95,9 Mo
              Versionning de notre avancement avec GIT
              • 1 min
              • 19,8 Mo

              La sécurité et les autorisations dans Symfony 4

              Mise en place des rôles d'utilisateurs
              • 7 mins
              • 116 Mo
              Modification de la Fixture pour créer un rôle ADMIN et un administrateur
              • 6 mins
              • 126 Mo
              Récupération des rôles dans l'entité User
              • 11 mins
              • 203 Mo
              Sécuriser le AdController avec les annotation @IsGranted() et @Security()
              • 10 mins
              • 285 Mo
              Sécuriser le AccountController avec les annotations @IsGranted() et @Security()
              • 4 mins
              • 97 Mo
              Afficher des liens et bouton en fonction du statut de l'utilisateur
              • 4 mins
              • 130 Mo
              Permettre aux utilisateurs de supprimer leurs annonces
              • 6 mins
              • 173 Mo
              Versionning de notre avancement avec GIT
              • 2 mins
              • 22,1 Mo
              Conclusion et ouvertures
              • 2 mins
              • 39,9 Mo

              Gérer les pages d'erreurs dans Symfony 4

              Comprendre la gestion des pages d'erreurs dans une application Symfony 4
              • 3 mins
              • 93,1 Mo
              Aperçu
              Créer une page d'erreur 404 personnalisée et la tester
              • 7 mins
              • 116 Mo
              Créer une page d'erreur 403 personnalisée et la tester
              • 5 mins
              • 129 Mo
              Faire attention au cache en environnement de production
              • 5 mins
              • 93,3 Mo

              Gestion des réservations

              Création d'une entité Booking et migration de la base de données
              • 6 mins
              • 95 Mo
              Modification de la Fixture pour ajouter de fausses réservations
              • 8 mins
              • 206 Mo
              Création du formulaire de réservation
              • 10 mins
              • 226 Mo
              Modifier l'apparence du champ DateType avec l'option "widget"
              • 2 mins
              • 37,9 Mo
              Ajout d'un champ de commentaire sur les réservations
              • 6 mins
              • 167 Mo
              Aperçu
              Création du lien de réservation à partir d'une annonce
              • 2 mins
              • 41,1 Mo
              Sécuriser la page de réservation avec l'annotation @IsGranted()
              • 2 mins
              • 31,8 Mo
              Enregistrer une réservation en calculant automatiquement le montant
              • 9 mins
              • 213 Mo
              Affichage d'une réservation existante
              • 15 mins
              • 341 Mo
              Utiliser un paramètre GET pour modifier l'affichage d'une réservation
              • 6 mins
              • 170 Mo
              Validation du formulaire de réservation (partie 1)
              • 3 mins
              • 58,5 Mo
              Prendre en compte la disponibilité d'une annonce lors de la réservation
              • 24 mins
              • 634 Mo
              Utiliser un calendrier Javascript pour empêcher le choix de dates indisponibles
              • 14 mins
              • 355 Mo
              Utiliser un DataTransformer pour gérer les dates au format français
              • 13 mins
              • 354 Mo
              Validation des dates du formulaire (partie 2)
              • 5 mins
              • 116 Mo
              Calculer le nombre de nuits et le montant de la réservation en Javascript
              • 10 mins
              • 249 Mo
              Création d'une page de liste des réservations
              • 9 mins
              • 221 Mo
              Versionning de notre avancement avec GIT
              • 1 min
              • 9,59 Mo

              Gestion des commentaires et notations

              Création d'une entité Comment pour stocker les avis des visiteurs
              • 6 mins
              • 91,3 Mo
              Modification de la Fixture pour ajouter de faux commentaires
              • 5 mins
              • 116 Mo
              Affichage des commentaires sur la page d'une annonce
              • 5 mins
              • 135 Mo
              Installation de FontAwesome pour bénéficier d'icônes !
              • 1 min
              • 24,3 Mo
              Afficher les notes sous forme d'étoiles
              • 5 mins
              • 124 Mo
              Factorisation du template d'affichage des notes sous forme d'icônes
              • 4 mins
              • 94,9 Mo
              Calculer et afficher la note moyenne d'une annonce
              • 9 mins
              • 230 Mo
              Affichage des moyennes sur l'ensemble des annonces
              • 3 mins
              • 70,3 Mo
              Personnaliser le CSS afin d'avoir des étoiles dorées pour les notes
              • 2 mins
              • 39,2 Mo
              Affichage du formulaire de commentaire sur une réservation
              • 12 mins
              • 343 Mo
              Enregistrer les données du formulaire de commentaire
              • 4 mins
              • 75,2 Mo
              S'assurer qu'un visiteur ne commente qu'une seule fois une annonce
              • 8 mins
              • 200 Mo
              Affichage des notes sur la liste des réservations
              • 5 mins
              • 138 Mo

              [Optionnel] Refonte visuelle et uniformisation

              Partie 1 : modifications CSS pour des changements globaux
              • 4 mins
              • 121 Mo
              Partie 2 : Uniformisation des espacements et du format des prix
              • 9 mins
              • 278 Mo
              Partie 3 : Refonte du formulaire de création d'une annonce
              • 7 mins
              • 138 Mo
              Partie 4 : Refonte du formulaire d'édition du profil
              • 4 mins
              • 64,9 Mo
              Partie 5 : Refonte du formulaire d'inscription
              • 4 mins
              • 94,7 Mo
              Partie 6 : Refonte du formulaire de modification du mot de passe
              • 2 mins
              • 42,3 Mo
              Partie 7 : Mise en place du Responsive avec la balise méta viewport !
              • 5 mins
              • 109 Mo

              Créer une interface d'administration pour notre application

              Création du controller d'Administration des Annonces : le AdminAdController
              • 11 mins
              • 237 Mo
              Mise en place d'un habillage différent au sein de l'administration
              • 4 mins
              • 85,1 Mo
              Mise à jour de la barre de navigation
              • 6 mins
              • 165 Mo
              Sécurité : Protéger l'accès à toute l'administration grâce aux ACL
              • 2 mins
              • 27,1 Mo
              Créer une page de connexion spécifique pour l'administration
              • 5 mins
              • 118 Mo
              Création d'un Firewall particulier pour l'administration
              • 5 mins
              • 79,8 Mo
              Créer le formulaire de connexion à l'administration
              • 10 mins
              • 221 Mo
              Permettre à l'administrateur de se déconnecter
              • 4 mins
              • 71,8 Mo
              Création du formulaire d'édition des annonces
              • 15 mins
              • 326 Mo
              Mettre en place un thème de CollectionType à nouveau
              • 17 mins
              • 386 Mo
              Permettre à l'administrateur de supprimer une annonce
              • 6 mins
              • 112 Mo
              Exercice : affichez la liste des commentaires !
              • 2 mins
              • 34,1 Mo
              Aperçu
              Solution : affichez la liste des commentaires !
              • 9 mins
              • 186 Mo
              Exercice : créez le formulaire d'édition d'un commentaire
              • 2 mins
              • 38,1 Mo
              Aperçu
              Solution : créez le formulaire d'édition d'un commentaire
              • 13 mins
              • 251 Mo
              Exercice : permettez à l'administrateur de supprimer un commentaire
              • 2 mins
              • 33,5 Mo
              Aperçu
              Solution : permettez à l'administrateur de supprimer un commentaire
              • 6 mins
              • 124 Mo
              Exercice : affichez la liste des réservations
              • 1 min
              • 23 Mo
              Aperçu
              Solution : affichez la liste des réservations
              • 6 mins
              • 111 Mo
              Découverte du type de champ EntityType pour l'édition d'une réservation
              • 15 mins
              • 324 Mo
              Le problème de la validation par l'entité Booking dans 2 formulaires différents
              • 5 mins
              • 81,8 Mo
              Découverte de la notion de Groupes de Validation (ValidationGroups)
              • 12 mins
              • 311 Mo
              Recalculer le montant d'une réservation lors de la modification de l'annonce
              • 4 mins
              • 81,9 Mo
              Permettre à l'administrateur de supprimer une réservation
              • 3 mins
              • 55,8 Mo
              Versionning de notre avancement avec GIT
              • 1 min
              • 10,4 Mo

              Découverte du concept de Service : mise en pratique avec la Pagination

              Introduction aux méthodes des Repositories pour récupérer les données
              • 7 mins
              • 158 Mo
              Aperçu
              Mise en place HTML et utilisation du findBy() pour paginer !
              • 5 mins
              • 125 Mo
              Placer des contraintes sur les paramètres des routes grâce aux Requirements
              • 6 mins
              • 117 Mo
              Rendre dynamique la pagination HTML
              • 9 mins
              • 192 Mo
              Découverte de la notion de Service pour la pagination
              • 4 mins
              • 93 Mo
              Aperçu
              Création du service de pagination
              • 23 mins
              • 501 Mo
              Factorisation du Twig concernant la pagination
              • 6 mins
              • 115 Mo
              Intégrer l'affichage de la pagination dans le service de pagination
              • 15 mins
              • 367 Mo
              Rendre configurable le service de pagination grâce au fichier "services.yaml"
              • 6 mins
              • 160 Mo
              Aider les futurs développeurs avec les exceptions
              • 5 mins
              • 111 Mo
              Conclusion : la notion de services et ses avantages
              • 2 mins
              • 41,8 Mo
              Versionning de notre avancement avec GIT
              • 1 min
              • 19,5 Mo

              Découverte du DQL et création du Dashboard : Les requêtes avec Doctrine

              Mise en place statique du Dashboard dans l'administration
              • 9 mins
              • 159 Mo
              Nos premières requêtes DQL
              • 6 mins
              • 132 Mo
              Les fonctions d'agrégation et le tri
              • 10 mins
              • 227 Mo
              Extraire la récupération des données du Controller grâce à la notion de Service
              • 9 mins
              • 208 Mo
              Découverte du QueryBuilder pour remplir la homepage du site
              • 13 mins
              • 349 Mo
              Aperçu

              Découverte de Webpack Encore : prendre soin de ses fichiers CSS et JS !

              Installation de Webpack Encore dans notre projet
              • 3 mins
              • 45,3 Mo
              Aperçu
              Mise en place de la bonne structure des fichiers
              • 2 mins
              • 56,8 Mo
              Fusionner des fichiers CSS en un seul fichier optimisé
              • 5 mins
              • 130 Mo
              Le versionning des fichiers CSS et JS afin de contourner les problèmes de cache
              • 8 mins
              • 258 Mo
              Utiliser SASS dans nos fichiers CSS grâce à Webpack Encore
              • 6 mins
              • 172 Mo
              Traiter nos fichiers Javascript avec Webpack Encore
              • 6 mins
              • 142 Mo
              Installation du package Bootstrap avec NPM
              • 2 mins
              • 31 Mo
              Pouvoir utiliser jQuery partout : le problème des modules Webpack
              • 3 mins
              • 64,8 Mo
              Créer plusieurs fichiers Javascript pour optimiser les chargements
              • 6 mins
              • 160 Mo
              Mise à jour de l'interface d'administration
              • 2 mins
              • 46,2 Mo
              Conclusion : non nécessaire mais tellement avantageux !
              • 2 mins
              • 53,8 Mo
              Versionning de notre avancement avec GIT
              • 1 min
              • 6,43 Mo

              Déploiement de l'application en production

              Création d'un dépôt Git sur la plateforme GitHub et premier "push" de code
              • 3 mins
              • 76 Mo
              Découverte du fichier .gitignore et des fichiers ignorés
              • 2 mins
              • 78,1 Mo
              Hébergement Mutualisé : introduction
              • 2 mins
              • 56,6 Mo
              Générer le fichier .htaccess avec le pack symfony/apache-pack
              • 4 mins
              • 145 Mo
              Hébergement Mutualisé : mise en ligne avec accès SSH
              • 12 mins
              • 443 Mo
              Hébergement Mutualisé : mise en ligne sans SSH
              • 10 mins
              • 557 Mo
              Hébergement Mutualisé : faire des mises à jour sans SSH
              • 4 mins
              • 135 Mo
              Hébergement Mutualisé : faire des mises à jour avec SSH
              • 4 mins
              • 137 Mo
              Heroku : mise en place de l'application et lien avec GitHub
              • 9 mins
              • 330 Mo
              Aperçu
              Heroku : mise en place de la base de données et mises à jour
              • 12 mins
              • 584 Mo
              Aperçu

              SECTION BONUS : Vidéos à venir sur différents sujets

              Chers étudiants, si vous êtes arrivés jusqu'ici c'est que vous avez bel et bien terminé ce cours ! Bravo à vous et j'espère de tout coeur qu'il vous a plu et que vous en avez tiré profit !

              Cette section est prévue pour accueillir des vidéos bonus qui arriveront en fonction de mes disponibilités : ce ne sont pas des vidéos qui étaient prévues pour cette formation mais des tutoriels que je mettrai en ligne sur YouTube et aussi ici afin de vous permettre d'être au courant qu'ils sont sortis !

              Merci encore de m'avoir fait confiance et n'oubliez pas, d'ici à ce qu'on se retrouve : développez vous bien !
              ⚡ AJAX & SYMFONY : INITIATION
                Aperçu
                🚀 SYMFONY/TWIG : CRÉER SES PROPRES FILTRES !
                  Aperçu
                  🎶 SYMFONY : L'AUTOWIRING ET LE CONTAINER DE SERVICES
                    Aperçu

                    Obtenir les mises à jour

                    Obtenez régulièrement des offres, des conseils et des mises à jour en vous inscrivant à ma newsletter 🚀

                    You're signing up to receive emails from Lior Chamla : Développez vous bien !