Symfony 4 was released on November 30th.
Update now to the best Symfony ever!

You are browsing the Symfony 4 documentation, which changes significantly from Symfony 3.x. If your app doesn't use Symfony 4 yet, browse the Symfony 3.4 documentation.

The Symfony Index

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A

APC Cache, APCu Cache [1] [2]
Array Cache [1] [2]
Asset
Custom Version Strategy
AST
Abstract Syntax Tree
ExpressionLanguage

B

BrowserKit
Bundle
Best practices
Extension configuration [1] [2] [3]
Inheritance [1] [2]
Naming conventions
Bundles

C

Cache [1] [2] [3]
CSRF; Forms
Cache-Control header [1] [2]
Conditional get
Configuration
ESI
Etag header
Expiration
Expires header
HTTP
HTTP expiration
Invalidation [1] [2]
Last-Modified header
Proxy
Reverse proxy
Safe methods
Symfony reverse proxy
Tags
Twig
Validation
Varnish
Vary
Cache Exceptions
Cache Expiration
Cache Item
Cache Pool [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
Caching
ExpressionLanguage
Chain Cache [1] [2]
Components
Asset
BrowserKit
Cache [1] [2]
ClassLoader
Config
Console
CssSelector
Debug
DependencyInjection
DomCrawler
Dotenv
EventDispatcher
Finder
Form
HttpFoundation
HttpKernel
Installation
Intl
Ldap
Lock
OptionsResolver
PHPUnitBridge
Process
PropertyAccess
PropertyInfo
Routing
Serializer
Stopwatch
Templating
Translation
Usage
Validator
VarDumper [1] [2]
Workflow
Yaml
Composer
Installation
Config
Caching based on resources
Defining and processing configuration values
Loading resources
Configuration [1] [2]
Cache
Debug mode
Doctrine DBAL
PHPUnit
Semantic [1] [2] [3]
Tests
Validation
Configuration reference
Doctrine ORM
Framework [1] [2]
Kernel class
Monolog
Swift Mailer
Twig
WebProfiler
Console
CLI
Changing the Default Command
Commands as Services
Console Helpers
Console arguments
Create commands
Events
Generating URLs
How to Call a Command from a controller
Logger
Single command application
Style commands
Usage
Console Helpers
DebugFormatter Helper
Formatter Helper
Process Helper
Progress Bar
Question Helper
Table
Controller
404 pages
Accessing services
Argument Value Resolvers
As Services
Base controller class
Customize error pages
Forwarding
Managing errors
Redirecting
Rendering templates
Response object
Routes and controllers
Simple example
String naming format
The session
Upload; File
Validating CSRF Tokens
Create subscriber
Create your First Page in Symfony
CssSelector

D

DBAL
Doctrine
Debug
Dependency Injection
Lazy Services
DependencyInjection
Advanced configuration
Autowiring
Compilation
Compiler passes
Container
Debug
ExpressionLanguage
Expressions
Factories
Importing Resources
Injection types
Method Calls
Parameters
Parent services
Request
Service Locators
Service configurators
Service definitions
Synthetic Services
Tags
Workflow
Deployment
Deploying to Heroku Cloud
Deploying to Microsoft Azure Website Cloud
Deploying to Platform.sh
Deploying to fortrabbit.com
Deployment tools
Doctrine
Associations
Common extensions
Custom DQL functions
DBAL
DBAL configuration
Define relationships with abstract classes and interfaces
Event listeners and subscribers
Generating entities from existing database
Lifecycle Callbacks
Multiple entity managers
ORM configuration reference
Resolving target entities
Simple Registration Form
Doctrine Cache [1] [2]
DomCrawler
Dotenv

E

Emails
In development
Spooling
Testing
Environments
Cache directory
Configuration files
Creating a new environment
Executing different environments
External parameters
Introduction
Error pages
ESI
EventDispatcher [1] [2] [3] [4]
Creating and dispatching an event
Debug
Dispatcher shortcuts
Event name introspection
Event subclasses
Event subscribers
EventDispatcher aware events and listeners
Events
Immutable
Listeners
Naming conventions
Service container aware
Stopping event flow
Traceable
Events
Create listener
Expressions
Expressions in the Framework
Extending
ExpressionLanguage

F

Filesystem
Filesystem Cache [1] [2]
Finder
Flex
Form
Custom field type
Custom form rendering
Data transformers
Embed collection of forms
Empty data
Events
Form testing
Form type extension
Form::submit()
Simple Registration Form
The "inherit_data" option
Forms [1] [2]
Basic template rendering
Built-in field types
CSRF protection
Changing the action and method
Create a form in a controller
Create a simple form
Creating form classes
Custom Type Guesser
Customizing fields
Disabling validation
Embedded forms
Field type guessing [1] [2]
Field type options
Fields; BirthdayType
Fields; ButtonType
Fields; CheckboxType
Fields; ChoiceType
Fields; CollectionType
Fields; ColorType
Fields; DateIntervalType
Fields; DateTimeType
Fields; DateType
Fields; EmailType
Fields; EntityType
Fields; FileType
Fields; FormType
Fields; IntegerType
Fields; LanguageType
Fields; LocaleType
Fields; MoneyType
Fields; NumberType
Fields; PasswordType
Fields; PercentType
Fields; RadioType
Fields; RangeType
Fields; RepeatedType
Fields; ResetType
Fields; SearchType
Fields; SubmitType
Fields; TelType
Fields; TextType
Fields; TextareaType
Fields; TimeType
Fields; TimezoneType
Fields; UrlType
Fields; country
Fields; currency
Fields; hidden
Form Events
Global Theming
Handling form submissions
Multiple Submit Buttons
Rendering each field by hand
Rendering in a template
Template fragment inheritance
Template fragment naming
Theming
Twig form function reference
Types Reference
Validation
Validation groups
Validation groups based on clicked button
Validation groups based on submitted data
With no class
Front controller
Origins

H

Homestead
How the front controller, ``Kernel`` and environments
HTTP [1] [2] [3] [4] [5] [6]
304
Request-response paradigm
Symfony request flow
HTTP headers
Cache-Control [1] [2]
Etag
Expires
Last-Modified
Vary
HttpFoundation
HttpFoundation, Sessions [1] [2] [3] [4]
HttpKernel

I

Installation
Composer
Installing and Setting up Symfony
Intl

J

JavaScript
Including JavaScripts

K

kernel, performance

L

Layout
Ldap
Lock
Logging [1] [2]
Console messages
Emailing errors
Exclude 404 Errors

M

Memcached Cache [1] [2]
Monolog
Configuration reference
Exclude 404 Errors

N

Naming conventions
Bundle
EventDispatcher

O

OptionsResolver
Override Symfony

P

Page creation
Example
PDO Cache, Doctrine DBAL Cache [1] [2]
Performance [1] [2]
Autoloader
Byte code cache
PHP Array Cache
PHP Templates
PHPUnit
Configuration
PHPUnitBridge
Process
Profiling
Data collector
Matchers
Profiling data
Storage Configuration
PropertyAccess
PropertyInfo
Proxy Cache
PSR-7

R

Redis Cache [1] [2]
Requirements
Routing [1] [2]
Absolute URLs
Advanced example
Allow / in route parameter
Basics
Conditions
Controllers
Custom route loader
Debugging
Extra Information [1] [2]
Generating URLs
Generating URLs in a template
Importing routing resources
Matching on Hostname
Method requirement
Optional Placeholders
Redirect URLs with a trailing slash
Redirect using Framework:RedirectController
Requirements
Scheme requirement
Service Container Parameters
_format parameter

S

Security [1] [2]
"Remember me"
Access Control Lists (ACLs)
Advanced ACL concepts
Authenticating against an LDAP server
CSRF Protection in the Login Form
Configuration reference
Creating a Custom Access Denied Handler
Creating and Enabling Custom User Checkers
Custom Authentication
Custom Password Authenticator
Custom Request Authenticator
Custom authentication provider
Customizing form login redirect
Data Permission Voters
Encoding Passwords
Entity provider
Force HTTPS
Impersonating User
Named Encoders
Pre authenticated providers
Restrict Security Firewalls to a Request
Securing any method
Securing any service
Simple Registration Form
User Provider
User provider
Vulnerability Checker
Security, Authentication
Security, Authorization
Security, Firewall
Serializer [1] [2]
Custom encoders
Serializer, Encoders
Service Container
Compiler passes
Configuring services
Debug
Decoration
ExpressionLanguage
Expressions
Extension configuration
Importing Resources
Imports
Request
Shared Services
Tags
Session
Database Storage
Flash messages
Sessions
Sessions, cookies
Sessions, saving locale
Sessions, Session Proxy, Proxy
Sessions, sessions directory
Single: Components
Expression Language
Slot
Stopwatch
Stylesheets
Including stylesheets
Symfony Framework Best Practices
Symfony Fundamentals
Requests and responses
Symfony Twig extensions
Symfony versus Flat PHP
Syntax
ExpressionLanguage

T

Template
Overriding exception templates
Overriding templates
Templating [1] [2]
Debug
Dump
Embedding action
Embedding pages
File locations
Formats
Global variables
Helpers [1] [2]
Include
Including other templates
Including stylesheets and JavaScripts
Inheritance
Layout
Linking to assets
Linking to pages
Linting
Namespaced Twig Paths
Naming conventions
Output escaping
Render template without custom controller
Slot
Syntax Check
Tags and helpers
Three-level inheritance pattern
What is a template?
app Variable
hinclude.js
Templating Helpers
Slots Helper
Tests [1] [2]
Assertions
Client
Configuration
Crawler
Database
Doctrine
Functional tests
HTTP authentication
Insulating clients
Profiling
Unit tests
Translation
Adding Custom Format Support
Debug
Lint
Locale
Missing Messages
Translation File Errors
Unused Messages
Usage
Translations
Fallback and default locale
Twig
Cache
Configuration reference
Debug
Dump
Introduction
Linting
Syntax Check
Twig extensions

U

Upgrading
Bundle; Major Version
Major Version
Minor Version
Patch Version
Using Parameters within a Dependency Injection Class

V

Vagrant
Validation
Configuration
Constraint targets
Constraints
Constraints configuration
Custom constraints
Error Levels
Getter constraints
Group Sequence Providers
Group Sequences
Groups
Payload
Property constraints
The basics
Translation
Using the validator
Validating raw values
Validator
Loading Resources
Metadata
VarDumper [1] [2]
Varnish
Invalidation
configuration

W

Web Server
Built-in Web Server
Web Services
SOAP
work together
Workflow
Dumping Workflows
Usage
Workflows as State Machines

Y

Yaml
YAML Format