Next session: 18-19 January (Herentals)


Getting Started with the Symfony2 Framework

From zero to hero

Symfony2 is a popular, enterprise ready PHP framework aimed to help you rapidly build better web applications. In this 2-day workshop we will write your our first Symfony application together.


Installing and Configuring Symfony2

After a short introduction, we’ll be setting up a local copy of the Symfony2 framework. We’ll also be covering some alternative ways of installing it.

Creating a Bundle

Your Symfony2 project will consist of one or more bundles, grouping all your application logic. After explaining the bundle system, we will show how to generate a new bundle and how to create a very simple page in Symfony2.

The Controller

The controller is the piece of your PHP code responsible for reading out the HTTP request and responding with a proper HTTP response.


The Symfony2 router is responsible for matching the HTTP request and finding the proper controller to execute. We will show how to configure the routing system.

Creating and using Templates

Templates represent the View layer in the MVC-paradigm. Symfony2 uses Twig as the default templating engine. After an introduction to Twig and its syntax, we will see how the templating engine integrates with the rest of the framework.

Databases and Doctrine

Database access is an essential part of almost any modern web application. We will show you how Doctrine2 can facilitate this for us in our Symfony2 application.


When working with user input, data validation is a crucial aspect in web development. Symfony’s validation component allows us to define a set of rules and then run any input through them.


The most common way of user input in web applications is through the use of web forms. We will be looking into how Symfony2 makes it easier and faster to generate forms, output them and validate the submitted data.


What if we want to restrict access to (parts of) our web application. Symfony2 offers a very flexible security component which makes it possible to define even the most complex forms of access control.


When our website has a diverse target audience, it might not always suffice to offer the content in only one language. Luckily Symfony2 makes it very easy to create a multilingual site.