EL337
Information technology

Symfony 6.4 - Back End web development

Master Symfony 6.4 to build secure web apps, REST APIs, and data-driven back-end systems

Building a robust web application requires much more than just knowing PHP. Symfony imposes a structure, conventions, and a rich ecosystem—which can be intimidating at first, but become powerful allies once you master them. This training covers the entire application development process with Symfony 6.4: routing, forms, databases, security, APIs, testing, and deployment. A comprehensive path, from a blank project to production.

Is it for you ?

Computer scientists.

Prerequisites

Des connaissances sur PHP sont nécessaires.

What You'll Walk Away With

  • Structure and develop a complete web application with Symfony 6.4
  • Manage data persistence, relationships, and security with Doctrine
  • Create and test robust, production-ready REST APIss maîtrisés

Training content

1 Introduction

  • Introduction to Symfony
  • Prerequisites for installing Symfony
  • Demonstration – Configuring the web server
  • Introduction to Composer
  • Demonstration – Installing Composer and Cmder
  • Choosing a coding tool
  • Demonstration – Installing and configuring PHPStorm
  • Symfony CLI
  • Creating a Symfony project
  • Project directories
  • Using Git with Symfony

2 Hello World

  • Routes and controllers
  • Introduction to the Twig template engine

3 Views and Twig

  • Module objectives
  • Introduction to Twig
  • Delimiters
  • Tags
  • Filters
  • Blocks, inheritance, and inclusion
  • Asset and URL management
  • Passing variables to the view
  • XSS attacks

4 Routing and controllers

  • Module objectives
  • Routes
  • Routes as attributes
  • Routes and the console
  • Controllers
  • Debugging

5 Data and Doctrine

  • Problems encountered with data
  • Configuring Doctrine
  • Entities
  • The EntityManager
  • Fixtures
  • Demonstration – Fixtures and Faker
  • The Repository
  • DQL and QueryBuilder

6 Forms

  • Introduction to forms
  • Form class
  • Displaying a form
  • Displaying a form in Twig
  • Using a theme
  • Processing a form
  • Data validation
  • Security: CSRF attacks

7 Doctrine: relationships between entities

  • The ManyToOne/OneToMany relationship
  • The ManyToMany relationship
  • The OneToOne relationship
  • Relationships between PHP objects
  • Relationships with Doctrine
  • Demonstration – Defining relationships between entities
  • Using fixtures with relationships
  • Retrieving an entity associated with another
  • Manipulating associated entities

8 Users and security

  • The Symfony security system
  • The user entity
  • The authentication system
  • The registration form
  • Authorization and roles
  • Role hierarchy
  • Other security features

9 Services

  • Introduction to services
  • Dependency injection and service container
  • Demonstration – Adding dependencies

10 API

  • Module objectives
  • What is an API?
  • The HTTP protocol
  • The JSON format
  • Postman (installation and quick overview)
  • The Serializer component
  • Demonstration – Manipulating an existing API
  • Creating an API
  • REST API
  • Demonstration – Setting up a CRUD
  • Validating data
  • Demonstration – Validating data in an API
  • The API Platform component
  • Security
  • JSON Web Token (JWT)
  • Demonstration – Setting up JWT authentication

11 Tests

  • Module objectives
  • Overview
  • Setup
  • Demonstration – Setting up the environment
  • Unit tests
  • Simulating objects (stubs/mocks)
  • Demonstration – Mocking a dependency
  • Integration tests
  • Functional or application tests
  • Functional tests (API)
  • End-to-end (E2E) tests
  • Code coverage
  • Test base issues

12 Deployment

  • Symfony environments
  • Demonstration – Customizing error pages
  • Deployment
  • Going further

13 Voting

  • Why use Voters?
  • Creating a Voter
  • Using in a controller with an attribute
  • Changing the message and status code in a controller
  • Using in a Twig file

14 The Console component

  • The Console component
  • Console Output
  • Console Input
  • Question Helper
  • Bonus: a crawler in console mode
See more

📌 Practical information

100% online training. Accessible anytime from anywhere for one year. If you have any questions about registration, the language of instruction, or the cancellation terms, please consult our FAQ

Trainers

Upcoming information
Duration
27.0 hours
Regular fee
$250
Private or personalized training

Do you have several employees interested in the same training course? Whether in person at your offices or remotely in virtual mode, we offer private training courses tailored to your team's needs. Group rates are available. Contact us for more details or request a quote online.

Request a quote

Request in-company training

Do you have several employees interested in the same training course? Whether in person at your offices or remotely in virtual mode, we offer private training courses tailored to your team's needs. Group rates are available. Contact us for more details or request a quote online.

Tell us more
Added to cart View my cart