Skip to content
UdemyPHPPaid courseBeginner levelCertificate

Symfony 5 - The complete Guide for Beginners (Udemy.com)

You will learn the PHP framework Symfony and develop a complete, secure and modern web application!

Created by: Fabian Heihoff

Last updated September 2026

icon
What you will learn

  • You will develop a fully functional, real-world website in Symfony
  • You learn how to install and set up Symfony and your development environment
  • You get to know all core components and the project structure of the framework
  • You learn how to use the Symfony Console, Composer as well as Symfony Flex
  • You get to know routes
  • You get to know controllers
  • You learn views in Symfony with the Twig template engine
  • You learn everything about Doctrine ORM (how to connect to a database)
  • You will learn more about the configuration of Symfony using practical examples
  • You will learn entities (models) in Symfony and the relations between entities
  • You learn to present and manage your projects with the Symfony Server
  • You get to know the Symfony Toolbar Profiler
  • You learn about service containers and services in Symfony

How it compares

Against the other 151 rated Udemy courses in PHP on CourseDuck:

  • Rating4.3 out of 5higher than 33% of them
  • Reviews485#52 of 152 by number of reviews
  • Length7.3 hourslonger than 59% of them
  • Last updatedSeptember 2026more recently than 99% of them

icon
Course Description

Welcome to the Symfony course for beginners! In this course you will learn how to use the powerful PHP framework Symfony 5. If you want to learn everything from the basics, to advanced topics, to stand-alone implementation of complex web applications in Symfony, this course is for you.

Not only can you build websites with Symfony, the framework is also great for developing microservices, APIs, mobile backends or highly complex web application with and without frontend.

In 7 hours you will learn step by step how to set up and implement your own projects. The course starts completely from 0, you should only have basic knowledge in PHP and HTML.

In the first part we will do all the necessary preparations to set up your development environment. (PHP 7+, MySQL, XAMPP, Visual Studio Code..) Furthermore I will show you helpful tools and software for the development. After that you will learn the project structure and how to use the console.

In the next part you will get to know all core components of Symfony. Controllers, routing, views, Twig, Doctrine and much more will be explained with a practical example and used live. After that you are ready for the web project.

The main part is the largest part of the course with more than 4 hours of content. Here you will implement a complete web application from the first to the last line of code. Besides the core components, you will learn more about forms, file upload, relationships, security, sending emails, Bootstrap frontend, databases and much more. As a bonus, at the end there is another chapter on advanced Symfony topics that cover the most important additions. With this knowledge, you can extend your Symfony projects as much as you want.

By the end of this course you will be able to create both simple websites and complex dynamic web applications using the great PHP framework Symfony.

Let's get started right away! :)

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Fabian Heihoff

Hallo! Mein Name ist Fabian Heihoff, ich bin studierter Wirtschaftsinformatiker und bringe langjährige Erfahrung als Web- und PHP Entwickler mit. Mittlerweile liegt mein Fokus vor allem auf der Entwicklung von React, Symfony, und Electron Web und Desktopapplikationen. Darüber hinaus gehört die Erstellung von Shopware Websites inklusive selbst entwickelter Erweiterungen ebenfalls zu meinem Spezialgebiet.

-----------------

Hello! My name is Fabian Heihoff, I studied computer science and economics and bring many years of experience as a web and PHP developer. Meanwhile my focus is mainly on the development of React, Symfony and Electron web and desktop applications. In addition, the creation of Shopware websites including self-developed extensions is also one of my specialties.


icon
More PHP courses

$11.99

Free

$64.99

$11.99

$13.99

$10.99

icon
Reviews

4.3

485 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Pascal van Geest on 3/15/2023

This course gives a great basic understanding of Symfony 5. Going step-by-step through the development of a Menu/Order Maintenance application, you learn the basics of The Model/View/Controller method of Symfony. You learn how to use the console, make modifications, and extend the basics with things like password checking, etc. All in all a great value for money. Thank you for creating the course!

By Anonymized User on 2/10/2023

This is an awesome course, well-structured and thought out. It helped me not only to learn about Symfony and Twig, but also to fill some blanks in general understanding of php projects. It's a very good source of information and I will definitely use it as a reference. As it's mentioned in other reviews, the original course was in German and thus the German words in the variable names can be confusing. But overall, it's a great course. Thank you, Fabian!

By Ulises Violante on 12/21/2022

The course is actually very good, but you can see that it was originally done in German and dubbed into English with a strong accent. But both the code and the comments in German make it much more difficult to follow the course without looking for word meanings to understand just variable names. The best thing would be to make one in English with the same content. Anyway thanks, it has worked for me.

By Artur Mickiewicz on 9/4/2022

Great little course! Lecturer is communicative and quickly responds to the queries, which is unique and lets me forgive flaws with translation (worth to mention that this course is translation from German, so if you don't like German or don't want to deal with it, this course may not be for you). Another thing is that course is stubborn in using Symfony 5 with annotation, while Symfony 6 has been relisted and uses attributes. While this is great for backwards compability, it is annoying, because system suggests you attributes. These are relatively small cons compare to great support, excellent and concise form of the course, knowledge is just jammed within small amount of time! I really appreciate presenting details for linux users, presenting vscodium instead of vscode, showing fish shell and some other cool tools. Also great pointing in right direction documentation wise. The instructions are clear and straight to the point. Attached files help to follow the code on the screen. Very clear presentation despite strong German accent (if you don't like it, you may have to avoid this course, however it would be a miss from educational point of view). Thank you Fabian!

By Pasquale Alfano on 9/2/2022

Lesson's progress is well thought, along with a maneageable duration of each lesson. The only pitfall seems to be the use of German language in the code, which also tricks the automatic captions and make it difficult the listening too but it is true, more than basics are covered through the course and you get a sound idea on how to build a working web application using symfony.

By Alin Draganescu on 8/26/2022

My only problem with the course is that is not adapted to Symfony 6 (actually 6.1), which is the last variant at this moment and installs automatically. The user must learn to adapt some commands, search through documentation and lose a few hours here and there to be able to get through. In the end, I abandoned this way and worked on the project in 5.4, as recommended. For a beginner is sometimes hard to deal with these problems and it provoked a few headaches. Also, the author should redo the entire app with English terms, when addressing to an English audience. I speak a bit of German and for me, it was not a problem... but this is tolerable only on YouTube. Here people spend money and it would be fair to see the whole app written in English. It is like seeing a Pacino movie with his voice doubled by some 60 years old german guy on ZDF.

By Jorge Halaban on 8/24/2022

Lo bueno del curso es que como dice el autor al final, se incorporan temas que no son frecuentes en cursos para principiantes. Muy completo y con una estética infrecuente en cursos de Symfony. Una sola objeción: No usar el alemán como idioma para designar tablas, campos y variables. respetar la denominación en inglés lo hará más sencillo para todos los alumnos

By Anonymized User on 8/3/2022

es bueno el curso , pero es necesario tambien indicar como se actuloza una nueva entidad, ya que en mi caso presente el error de An exception has been thrown during the rendering of a template ("Warning: Undefined property: App\Entity\ el cual solucione con el comando php bin/console doctrine:schema:update --force , adicional a ello la version para el 2022 no acepta el //$bild = $request->files->get('gericht')['anhang']; por lo que genere uso de $bild = $form->get('anhang')->getData();

By Wojciech Pietrzak on 4/29/2022

Regretfully, I cannot give a better feedback after some practices I've seen. There was a minor drawback in the beginning Section 5 when it turned out that the pictures of the dishes were not deleted from the disk once the dishes were removed from the database. But this was a minor overlook. I was also unhappy with the German names and messages because I wanted to practice my German through the course as well but I noticed the messages weren't always purely grammatically correct. There were more things which were not only bad programming practices but also failed to show the Symphony possibilities which would have been revealed by the good practices. 1. Error handling. The end-user should not see the default Symfony error when he does something wrong (for example: enters a negative price, enters a price with four digits after comma, or, what really produces a nasty error, enters a different password than the password repetition). A very slight suggestion how to handle this had appeared no sooner than in 38. Services and Validation and still wasn't covered. It's not enough. 2. The limitations that only opened orders may be deleted, or only pre-defined statuses may be set, worked only if a user didn't manipulate the URL manually which is quite easy. Checking this in the controller is missing as well as showing us how to use hardcoded dictionaries or enum types instead of varchars which are not suitable for something like status. A status should be a hardcoded dictionary or an enum to show us something different than a database table which was covered by categories, and both statuses and categories should be iterated through instead of hardcoding them in twig templates to also show how to minimize the work in case of adding a new category. 3. The whole organizing of orders was totally ridiculous. Every normal database would connect orders with dishes many-to-many and handling many-to-many with Symfony wasn't shown anywhere while this was the ideal place to do so. I am not requiring logging in by customers and managing multiple different orders at once because it's quite straightforward how to do it once you are through the previous lessons so "tisch1" etc. are okayish but the general structure is not. By the way: counting the total order value by the twig template violates the MVC distribution of tasks. The model should count this value and the controller should ask for it and give it to the view, in your example the view calculates it. It would also be nice if the prices were all formatted to exactly two digits after comma but this is minor. And one thing I was missing but I wouldn't cut any stars for this, I just thought it would be natural to include this: after the sending e-mails lesson I expected a quick showing of a package (I assume there is one) using e-mails to resume access to the account once the password was forgotten. I don't know whether Udemy allows adjusting user ratings once submitted or not. If it does, I am ready to move my rating up once "Create Orders" is re-designed and re-recorded at least to the point where it shows handling many-to-many, as it should be in a real project.

By Jeroen Somhorst on 10/12/2021

It gives a really basic understanding of Symfony. But it feels a) a bit out of date (flex.symfony.com doesn't exist anymore for instance) b) security. In the security paragraph we get alot of 'we don't need to know this and that'. But security is one of the most difficult things to master c) as said by many others. Don't use german variables if the other parst of your code are in English..

Showing all 10 reviews on CourseDuck

Read all 485 reviews on Udemy

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 86 / 100