Symfony Certification

View the Project on GitHub imbue/symfony-certification-preparation

PHP and Web Security

PHP API up to PHP 7.2 version

Object Oriented Programming

Namespaces

Interfaces

Anonymous functions and closures

Abstract classes

Exception and error handling

Traits

PHP extensions

SPL

Web security (XSS, CSRF, etc.)


HTTP

Client / Server interaction

Status codes

HTTP request

HTTP response

HTTP methods

Cookies

Caching

See HTTP Caching

Content negotiation

Language detection


Symfony Architecture

Symfony Flex

License

Components

Bridges

Configuration

Code organization

Request handling

Exception handling

Event dispatcher and kernel events

Official best practices

Release management

Backward compatibility promise

Deprecations best practices


Standardization

Release management and roadmap schedule

Framework interoperability and PSRs

Naming conventions

Coding standards

Third-party libraries integration

Composer packages handling

Development best practices

Framework overloading

Semantic versioning


Controllers

Naming conventions

The base Controller class

The request

The response

The cookies

The session

The flash messages

HTTP redirects

Internal redirects

Generate 404 pages

File upload

Built-in internal controllers


Routing

Configuration (YAML, XML, PHP & annotations)

Restrict URL parameters

Set default values to URL parameters

Generate URL parameters

Trigger redirects

Special internal routing attributes

Domain name matching

Conditional request matching

HTTP methods matching

User’s locale guessing

Router debugging


Templating with Twig

Auto escaping

Template inheritance

Global variables

Filters and functions

Template includes

Loops and conditions

URLs generation

Controller rendering

Translations and pluralization

String interpolation

Assets management

Debugging variables


Forms

Forms creation

Forms handling

Form types

Forms rendering with Twig

Forms theming

CSRF protection

Handling file upload

Built-in form types

Data transformers

Form events

Form type extensions


Data Validation

PHP object validation

Built-in validation constraints

Validation scopes

Validation groups

Group sequence

Custom callback validators

Violations builder


Dependency Injection

Service container

Built-in services

Configuration parameters

Services registration

Tags

Semantic configuration

Factories

Compiler passes

Services autowiring

PHP and Web Security

PHP API up to PHP 7.2 version

Object Oriented Programming

Namespaces

Interfaces

Anonymous functions and closures

Abstract classes

Exception and error handling

Traits

PHP extensions

SPL

Web security (XSS, CSRF, etc.)


HTTP

Client / Server interaction

Status codes

HTTP request

HTTP response

HTTP methods

Cookies

Caching

See HTTP Caching

Content negotiation

Language detection


Symfony Architecture

Symfony Flex

License

Components

Bridges

Configuration

Code organization

Request handling

Exception handling

Event dispatcher and kernel events

Official best practices

Release management

Backward compatibility promise

Deprecations best practices


Standardization

Release management and roadmap schedule

Framework interoperability and PSRs

Naming conventions

Coding standards

Third-party libraries integration

Composer packages handling

Development best practices

Framework overloading

Semantic versioning


Controllers

Naming conventions

The base Controller class

The request

The response

The cookies

The session

The flash messages

HTTP redirects

Internal redirects

Generate 404 pages

File upload

Built-in internal controllers


Routing

Configuration (YAML, XML, PHP & annotations)

Restrict URL parameters

Set default values to URL parameters

Generate URL parameters

Trigger redirects

Special internal routing attributes

Domain name matching

Conditional request matching

HTTP methods matching

User’s locale guessing

Router debugging


Templating with Twig

Auto escaping

Template inheritance

Global variables

Filters and functions

Template includes

Loops and conditions

URLs generation

Controller rendering

Translations and pluralization

String interpolation

Assets management

Debugging variables


Forms

Forms creation

Forms handling

Form types

Forms rendering with Twig

Forms theming

CSRF protection

Handling file upload

Built-in form types

Data transformers

Form events

Form type extensions


Data Validation

PHP object validation

Built-in validation constraints

Validation scopes

Validation groups

Group sequence

Custom callback validators

Violations builder


Data Validation

PHP object validation

Built-in validation constraints

Validation scopes

Validation groups

Group sequence

Custom callback validators

Violations builder


Dependency Injection

Service container

Built-in services

Configuration parameters

Services registration

Tags

Semantic configuration

Factories

Compiler passes

Services autowiring


Security

Authentication

Authorization

Configuration

Providers

Firewalls

Users

Passwords encoders

Roles

Access Control Rules

Guard authenticators

Voters and voting strategies


HTTP Caching

Cache types (browser, proxies, and reverse-proxies)

Expiration (Expires, Cache-Control)

Validation (ETag, Last-Modified)

Client side caching

Server side caching

Edge Side Includes


Console

Built-in commands

Custom commands

Configuration

Options and arguments

Input and Output objects

Built-in helpers

Console events

Verbosity levels


Automated Tests

Unit tests with PHPUnit

Functional tests with PHPUnit

Client object

Crawler object

Profile object

Framework objects access

Client configuration

Request and response objects introspection

PHPUnit bridge

Handling legacy deprecated code


Miscellaneous

Error handling

Code debugging

Deployment best practices

Process and Serializer components

Data collectors

Web Profiler and Web Debug Toolbar

Internationalization and localization