Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ Microsoft AZ-900
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Personal Transformation Life Purpose Meditation CBT Emotional Intelligence
Web Development JavaScript React CSS Angular PHP Node.Js WordPress Vue JS
Google Flutter Android Development iOS Development React Native Swift Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
Microsoft Power BI SQL Tableau Business Analysis Data Modeling Business Intelligence MySQL Data Analysis Blockchain
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Business Plan Startup Online Business Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Web Development Symfony

Symfony 4 & 5 Web Development Guide: Beginner To Advanced

Master Symfony PHP framework: from theory, through simple crud app, up to creating an advanced Real Life Application
Bestseller
Rating: 4.3 out of 54.3 (921 ratings)
4,809 students
Created by Symfony, Laravel & PHPUnit Stuff
Last updated 11/2020
English
English [Auto]
30-Day Money-Back Guarantee

What you'll learn

  • You will learn Symfony 4 & 5 from theory to advanced level by creating real life projects
  • You will create two apps: simple crud app and an advanced video sharing service with PayPal integration, deployment to Heroku etc.
  • You will learn how to create multilevel nested categories tree in PHP
  • You will learn how to install Symfony
  • You will learn about Symfony configuration
  • You will learn about Symfony Flex
  • You will learn about HTTP processing workflow in Symfony framework
  • You will learn routes
  • You will learn controllers
  • You will learn views in Symfony using Twig
  • You will learn html forms in Symfony
  • You will learn Doctrine ORM (how to use database)
  • You will learn entities (models) in Symfony and relations between them
  • You will learn about service container & services in Symfony
  • You will learn dependency injection (autowiring in Symfony)
  • You will learn console command
  • You will learn how to create events and listeners
  • You will learn how to use sessions & cookies in Symfony
  • You will learn how to send emails
  • You will learn how to do translations in Symfony
  • You will learn about security concepts in Symfony (login, registration, etc.)
  • You will learn unit & functional testing
  • You will learn about debugging Symfony applications
  • You will learn about cache
  • You will learn how to use Redis for session and cache
  • You will learn about doctrine table inheritance in Symfony & polymorphic database queries
  • You will learn how to deploy a Symfony application to Heroku (make application online)
  • You will learn how to integrate PayPal with the Symfony application for making subscription billing
  • You will learn how to use external API (Vimeo api) and use it with the Symfony application
  • You will be able to create your own websites or web applications in Symfony framework
  • You will learn basics of RabbitMQ message broker
  • You will learn basics of Messenger Component
  • You will learn CQRS pattern - command query responsibility segregation
  • You will learn REST API with Symfony & API Platform

Course content

26 sections • 312 lectures • 24h 20m total length

  • Preview04:03
  • About Symfony
    02:08
  • Preview02:32
  • How to use the course
    01:47
  • Preview04:04
  • Quick note about coding standards
    01:34
  • How to get helped
    00:26

  • Symfony 4 installation & requirements
    04:19
  • Symfony 4 configuration
    02:28
  • Installing libraries with Symfony Flex
    03:06
  • Request & response objects, HTTP processing workflow
    02:55

  • Before you start watching this section of the Symfony course
    00:44
  • Routes
    04:19
  • Controllers
    06:56
  • Views
    05:21
  • Entities (models)
    12:40
  • Preview10:54
  • Service container & services - part2
    02:38
  • Advanced routes
    03:47
  • Flash messages
    03:26
  • Cookies
    01:50
  • Session
    02:22
  • POST & GET data
    01:28
  • Custom error pages
    02:13
  • Handle exceptions
    00:47
  • Binding services to controllers
    01:20
  • More features in controllers
    05:20
  • Views - tags, filters, functions, tests, operators
    07:23
  • Views - genereate url's and escaping strings
    03:35
  • Views - global variables
    01:52
  • Views - Webpack Encore
    07:31
  • Views - using app variable
    01:29
  • Views - embed controllers in view
    03:33
  • Doctrine crud - create
    03:31
  • Doctrine crud - read
    02:24
  • Doctrine crud - update
    00:58
  • Doctrine crud - delete
    00:54
  • Doctrine raw queries
    01:04
  • Preview01:22
  • Doctrine LifecycleCallbacks option
    02:23
  • Doctrine one-to-many & many-to-one relationships
    08:51
  • Doctrine database relationships - cascade remove ralated objects
    09:06
  • Doctrine one-to-one relationship
    04:18
  • Doctrine many-to-many self referencing relationship
    04:58
  • Doctrine Query Builder & eager loading
    04:27
  • Doctrine table inheritance mapping in Symfony (polymorphic queries) - part 1
    04:03
  • Doctrine table inheritance mapping in Symfony (polymorphic queries) - part 2
    07:31
  • Doctrine table inheritance mapping in Symfony (polymorphic queries) - part 3
    17:24
  • Service parameters
    03:39
  • Service & autowiring by constructor injection and service arguments
    02:04
  • Service configuration
    02:35
  • Services - setter injection for optional dependencies
    04:26
  • Services - property injection
    01:47
  • Install composer package before the next lecture
    00:04
  • Services - lazy services
    02:17
  • Service - aliases
    03:09
  • Service - tags
    04:02
  • Service - dealing with different implementations of a service
    04:35
  • Services list
    01:11
  • Cache - basic usage
    04:27
  • Cache - tags
    05:28
  • Symfony console
    02:03
  • Use profiler tool in Symfony
    05:27
  • Environments vs kernels
    03:04
  • Deploy Symfony application
    03:08
  • Events & Listeners base concepts
    01:59
  • Create listener
    02:28
  • Dispatching events
    04:27
  • Create subscriber
    01:33
  • Subscriber - many events handled by one subscriber
    01:26
  • Subscriber - events priorities
    02:08
  • Form - create a class
    02:20
  • Form - render in view
    05:13
  • Form - themes
    01:51
  • Form - send
    01:29
  • Form - validation
    02:11
  • Form - events
    03:48
  • Form - fields not related to entity
    01:53
  • Form - upload files
    04:35
  • Email - install email package & send an email
    03:19
  • Email - spooling
    02:21
  • Email - functional testing
    03:25
  • Security - create user
    02:28
  • Security - register
    06:56
  • Security - login
    03:18
  • Security - logout
    01:37
  • Security - login & remember login state
    01:42
  • Security - csrf
    00:39
  • Security - use security checker
    00:18
  • Install expression-language package
    00:02
  • Security - authorization using annotations
    06:26
  • Security - authorization using configuration file
    01:18
  • Security - authorization using denyAccessUnlessGranted method
    01:17
  • Security - authorization in view files
    01:11
  • Security - authorization using voters
    02:14
  • Unit tests - install
    02:16
  • Unit tests - first unit test
    01:22
  • Functional tests - install
    01:32
  • Functional & unit tests - common assertions
    03:33
  • Functional tests - click links
    02:21
  • Functional tests - send a form
    02:00
  • Functional tests - data providers
    01:22
  • Functional tests - tests in isolation
    04:16
  • Tests - mock objects
    05:05
  • Tests - code coverage report
    01:56
  • Translations - install a package
    00:47
  • Translations - views
    03:30
  • Translations - controllers
    01:03
  • Translations - routes
    02:08
  • Translations - pluralization
    03:12

  • Before you start watching this section of the Symfony course
    00:48
  • Preview10:36
  • Preview13:38
  • Preview08:08
  • Preview14:10
  • Preview05:58
  • Preview03:11
  • Preview03:18

  • Before you start watching this section of the Symfony course
    00:53
  • Installation of Symfony 4 framework and moving template to it
    08:43
  • Continue with moving html template to Symfony
    05:54
  • Make template links working in Symfony - part 1
    09:29
  • Make template links working in Symfony - part 2
    12:46
  • Make template links working in Symfony - part 3
    17:19
  • Make template links working in Symfony - part 4
    06:59
  • Make template links working in Symfony - part 5
    05:38
  • Install Webpack-Encore
    07:45

  • Category entity (model)
    17:05
  • Continue with Category fixtures - part 1
    06:52
  • Continue with Category fixtures - part 2
    05:12
  • Display main categories on website
    07:01
  • Create custom Twig filter
    04:06
  • Category class for front-end
    12:10
  • Build php array for nested categories
    04:18
  • Create nested categories on front-page
    09:18
  • Finish displaying categories on front-page
    17:02
  • Display categories in admin area - part 1
    11:57
  • Display categories in admin area - part 2
    06:05
  • Edit category in admin panel - part 1
    05:04
  • Edit category in admin panel - part 2
    09:44
  • Edit category in admin panel - part 3
    02:21
  • Edit category in admin panel - part 4
    07:08
  • Edit category in admin panel - part 5
    06:09

  • Unit testing of categories - part 1
    06:21
  • Unit testing of categories - part 2
    13:38
  • Unit testing of categories - part 3
    02:05
  • Unit testing of categories - part 4
    03:45
  • Unit testing of categories - part 5
    02:42

  • Functional testing of categories - part 1
    05:21
  • Functional testing of categories - part 2
    08:07
  • Functional testing of categories - part 3
    03:10
  • Functional testing of categories - part 4
    01:15

  • Create video fixtures
    03:44
  • Videos on front-page
    03:28
  • Pagination
    04:06
  • Display videos from child categories
    04:54
  • Sort videos
    04:14
  • Search results
    04:48
  • Functional testing of videos - part 1
    02:02
  • Functional testing of videos - part 2
    01:17
  • Functional testing of videos - part 3
    01:10

  • Symfony login system - part 1
    05:12
  • Symfony login system - part 2
    04:02
  • Symfony login system - part 3
    03:34
  • Symfony login system - part 4
    04:47
  • User roles - part 1
    03:08
  • User roles - part 2
    01:11
  • User roles - part 3
    01:14
  • Display links for users depending on login status - part 1
    01:02
  • Display links for users depending on login status - part 2
    02:44
  • Securing access to superadmin pages
    04:07
  • Check security
    01:23

Requirements

  • PHP language and object oriented programming
  • Basics of HTML, CSS, JavaScript
  • How to install software on your computer and have internet connection
  • You need to have server environment installed, e.g. Ubuntu, Xampp etc. to work with PHP applications locally

Description

Welcome to the best course of Symfony (incl. 4 & 5 version) - the great PHP framework!


In this course you will learn Symfony from basic to advanced level!

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


Very practical course! Almost all sections/concepts are explained using real life applications/scenarios. In this course we will create a huge real life app (probably you will not find a course where built more advanced  app like in this course)


This is a very massive guide to Symfony, which is one of the most popular PHP frameworks. Symfony 4 version introduced a new approach to php frameworks - it starts small as a microframework and grows as you need new features. You install them using the amazing Symfony Flex tool. For example, if you are making a simple website and do not need a login functionality then there is no code responsible for logging in the framework directory. Thanks to this our application contains only as much as we really need.

   


**********************************************

The course consist of three main parts:

1. The theoretical part where I discuss the basic Symfony concepts on examples with effects on a web browser

2. In the second part we will build a simple application in Symfony - a list of tasks to be performed (database used)

3. In part 3 we will build an advanced web application for video subscription in which we integrate PayPal for payments, multi-level nested video categories, communication with Vimeo API, deployment to Heroku server


as well as:


BONUS section added (October 2019) - basics of Symfony Messenger Component, RabbitMQ message broker and CQRS pattern (Command Query Responsibility Segregation) with practical example by simulating e-commerce system consisting of main app and cooperating microservices.


Course update: (January 2020) new section added REST API with Symfony & API Platform

**********************************************



During the course we will be covering many simple and advanced Symfony concepts such as: routing, controllers, views, database with doctrine orm, entities and relationships between them: one to one, one to many and many to many; events & listeners, security topics such as login, registration, authorization; also unit and functional testing, dependency injection, service container, symfony services, doctrine table inheritance with polymorphic database queries, REST API and many more.


This course is a combination of theory and project-based learning approach. Learning by building real projects is the best way to learn programming languages and tools like php frameworks.


All of the course applications were made using Symfony 4 (except applications for rest api section - Symfony 5). Upgrade to Symfony 5 section was added to the course. According to Symfony standard, there are no any new features in Symfony 5.0 compared to Symfony 4.4.


Remember that only practice makes perfect. If necessary, study the course two or more times. Take notes  during the course like a real student. Use documentations, Google search. Finally, try to write the application yourself, not necessarily the same as in the course, you can try to change, add something, etc. No single course will make you a very good web developer. It can only bring you closer to this goal. The more practice, the better.


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

QA

Question:

You used Symfony 4 and Symfony 5 in this course for creating apps to practice knowledge. Why not use only the latest version? Does it mean that this course is outdated and I will not benefit from it?

Answer:

Absolutely not! In tools like PHP frameworks the fundamentals and base syntax almost never change regardless of the version. But of course any maintained software evolves all the time. That's why I always suggest you to use the version of software that instructor uses in the course. It prevents from errors and confusions. As a someone who wants to learn web development you should be aware, that real web development involves also adapting the code to newer versions if necessary - but this is not always necessary, not every company do that. Software changes so often that the instructors would not be able to create the courses so that they match the latest version. This is not even advisable, because as a student you would loose an important aspect of real web development - the awareness that everything is changing and you need to be able to deal with it.

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


Enroll now and let's start learning Symfony!

There is no risk! 30 day money back guarantee (as always at Udemy)

Who this course is for:

  • Everyone who want to learn Symfony framework
  • Everyone who is interested in building web applications and websites

Featured review

Pranan Subba
Pranan Subba
11 courses
2 reviews
Rating: 5.0 out of 5a year ago
I would probably say this course was more than the expected. Although I had some experience with Symfony ,but the course is so suitable for beginner and also to others who wants upgrade the Symfony knowledge to expertise. The instructor is great, has excellent knowledge of the content and also he is quick to response to resolve issue. I'm really grateful to Robert.

Instructor

Symfony, Laravel & PHPUnit Stuff
PHP Web Development Courses
Symfony, Laravel & PHPUnit Stuff
  • 4.4 Instructor Rating
  • 1,563 Reviews
  • 21,677 Students
  • 9 Courses

My name is Robert. I am a passionate full-stack web developer with many years of experience in web industry. I have created/participated in many web applications and websites, as well as hybrid mobile applications, mainly for interactive agencies and individuals. I have extensive development experience in the PHP technology including strong architecture and coding skills. I love to work on complex and business-critical tasks.

Here on Udemy I publish premium courses/tutorials on how to build modern web applications. My methodology is teaching through engineering and showing non-standard solutions. Currently I focus on PHP, Symfony, Laravel, web and hybrid mobile applications.

There is no the only right and the best technology for me. And the reason for that is very simple: programming is thinking, not a specific programming language or tool. The same problem can be solved using many languages or tools with the same effect. 

Since a short time ago, I've also been sharing my knowledge and experience by writing on a blog and creating online courses.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.