SF2C1 | Getting Started with Symfony2

  • This training is the best starting point to get ready with new Symfony 2 framework uses and tools. The perfect means to achieve a development methodology based on best practices and expertise. This training workshop is available online. Contact us and we'll tell you how.
  • Prerequisites

    Good knowledge of PHP and Object Oriented Programming
  • Goals

    In two days, take the Symfony2 PHP framework into your hands and discover Symfony2 basics and features like MVC implementation, forms processing and page rendering with the Twig template engine.

Full program

Object Oriented Programming (on demand)

  • Classes and objects
  • Properties and methods
  • Constructor and destructor methods
  • Class inheritance
  • Attributes and methods scopes (visibility)
  • Error handling with exceptions
  • Namespaces

General Introduction to the Symfony Framework

  • Introducing the Symfony framework and its ecosystem
  • Installing the Symfony « Standard Edition Distribution »
  • Discovering the Symfony project architecture (application, bundles, libraries, bundles etc.)
  • Understanding the HTTP request processing workflow
  • Understanding the concept of environment (development, production and testing)
  • Introducing the coding and files naming conventions
  • Discovering the concept of a « Bundle »

Debugging the Code

  • Getting help from the « Web Debug Toolbar »
  • Introspecting the recorded logs
  • Profiling HTTP requests thanks to the « Web Profiler » application
  • Spotting problems thanks to explicit errors and exceptions stack traces

Configuring the Application

  • Comparing supported built-in configuration: XML, YAML and PHP
  • Configuring the application thanks to global settings
  • Configuration application’s routes and URLs
  • Overriding the configuration defined by a built-in or third-party « bundle »

Generating Pages for the End User

  • Introducing the Twig templates rendering engine
  • Comparing Twig and raw PHP templating strategies
  • Accessing global variables from Twig templates (request, session, user)
  • Using tags, filters and function to generate and format contents in a Twig template
  • Making templates truly extensible thanks to the template inheritance feature
  • Splitting templates into small templates chunks to avoid code duplications
  • Rendering a Symfony controller from within a Twig template
  • Generating URLs based on the application’s routes configuration
  • Rendering Symfony forms with custom Twig view helpers

Designing Controller & Analazing the Request

  • Designing a controller class with its action methods
  • Mapping URL patterns to Symfony controllers thanks to annotations configuration
  • Generating a raw response or a response based on a Twig template
  • Accessing client’s information from the Request object
  • Reading and writing session data
  • Reading and writing cookies’ data
  • Triggering a 404 error page when the resource is not found
  • Triggering an internal redirect to another controller to avoid code duplication
  • Redirecting the user to another page

Interacting with the End User with Forms

  • Discovering the « Form » component
  • Designing and processing simple web forms
  • Adding validation constraints on submitted form fields’ data
  • Prototyping the form rendering thanks to Twig view helpers
  • Gathering the form submitted data and processing them
  • Sending the form validated and filtered data by e-mail to some recipient

Internationalizing & Localizing the User Interface

  • Discovering the « Translation » component
  • Changing the default user’s locale
  • Defining custom abstract translation keys in Twig templates
  • Generating XLIFF translation catalogues skeletons
  • Translating abstract translation keys in XLIFF catalogues
  • Dealing with dynamic translations including pluralized sentences
  • Duration

    2 day(s)
  • Level

  • Available languages

    French, English, German, Spanish
  • Available countries

    Germany, Spain, United States, France, United Kingdom, Belgium, Switzerland, Worldwide
From €1,290.00
No session scheduled

No session is scheduled for this course. However we organize tailored training courses: contact us for more informations!