Extending Symfony2 Web Application Framework

Extending Symfony2 Web Application Framework
eBook: $20.99
Formats: PDF, PacktLib, ePub and Mobi formats
save 15%!
Print + free eBook + free PacktLib access to the book: $55.98    Print cover: $34.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Table of Contents
Sample Chapters
  • Extend the main elements of Symfony 2
  • Learn about the internal Symfony 2 framework
  • Customize developed web applications with Symfony 2

Book Details

Language : English
Paperback : 140 pages [ 235mm x 191mm ]
Release Date : March 2014
ISBN : 1783287195
ISBN 13 : 9781783287192
Author(s) : Sébastien Armand
Topics and Technologies : All Books, Web Development, Open Source

Table of Contents

Chapter 1: Services and Listeners
Chapter 2: Commands and Templates
Chapter 3: Forms
Chapter 4: Security
Chapter 5: Doctrine
Chapter 6: Sharing Your Extensions
  • Chapter 1: Services and Listeners
    • Services
      • A geolocation service
      • Testing services and testing with services
      • Tagging services
    • Listeners
      • Updating user preferences using custom events
      • Improving user performance
        • Code that works after the response
    • Summary
  • Chapter 2: Commands and Templates
    • Commands
      • The initial situation
      • Resizing user pictures
      • Testing a command
      • Commands as an interface to services
    • Twig
      • Managing our scripts
      • Testing a Twig extension
      • The time difference filter
    • Summary
  • Chapter 3: Forms
    • An input for geographical coordinates
      • Setting up the basics
      • Using the map
    • Data transformers
    • Forms based on user data
    • Going further
      • The initial setup
      • Adding and removing fields
    • Summary
  • Chapter 4: Security
    • Authentication
      • Simple OAuth with GitHub
        • The firewall
        • The security factory
    • Authorization
      • Voters
      • Annotations
        • Defining an annotation
        • Securing controllers with custom annotations
    • Securing an API – an example
    • Summary
  • Chapter 5: Doctrine
    • Creating your own data types
      • User and meetup locations
      • Testing
    • Custom DQL functions
    • Versioning
      • Setting a version on all entities
      • Using and updating versions
      • Testing
    • Creating a Doctrine filter
    • Summary
  • Chapter 6: Sharing Your Extensions
    • Creating the bundle
      • Exposing the configuration
    • Getting ready to share
      • Research
      • Documentation
      • Testing
      • Distribution and licensing
      • Is it just a bundle?
    • Summary

Sébastien Armand

Sébastien Armand is a software developer based in Beijing, China. He spent most of the past five years working with Symfony, building internal IT systems. He co-founded mashupsports.com, a social website for sports enthusiasts based on Symfony2. He contributed to Symfony and the Symfony documentation on many occasions.

Code Downloads

Download the code and support files for this book.

Submit Errata

Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Frequently bought together

Extending Symfony2 Web Application Framework +    Mastering Object-oriented Python =
50% Off
the second eBook
Price for both: ₨528.00

Buy both these recommended eBooks together and get 50% off the cheapest eBook.

What you will learn from this book

  • Make and review services and listeners
  • Integrate your extension with specific hooks
  • Create custom commands, templates, and database integration
  • Customize the security layer
  • Configure extensions to share with the community
  • Integrate to the same level as Symfony's core modules

In Detail

Symfony is a high performance PHP framework for developing MVC web applications. Symfony1 allowed for ease of use but its shortcoming was the difficulty of extending it. However, this difficulty has now been eradicated by the more powerful and extensible Symfony2. Information on more advanced techniques for extending Symfony can be difficult to find, so you need one resource that contains the advanced features in a way you can understand.

This tutorial offers solutions to all your Symfony extension problems. You will get to grips with all the extension points that Symfony, Twig, and Doctrine offer and understand how each of them can be specifically leveraged to achieve cleaner, better structured, and re-usable code for your application.

Beginning with the core concepts of Services and Listeners, you quickly move on to learn the complexity of forms, creating commands, and implementing security, and finally you will share these extensions with others. This book will tell you everything you need to know to regain control of your code, to keep things simple, and share it within your application(s) or even the world. Whether you have already written extensions for Symfony2 or not, this book will be a useful guide through all possible types of extensions, and how each of them can be implemented and leveraged in your own applications.


With lots of practical, hands-on, step-by-step examples, this book will lead you through how to extend and optimize your Symfony2 framework.

Who this book is for

If you have a good understanding of how Symfony works and are now trying to integrate complex tasks in your application, or want to better organize your application by keeping each piece of code where it belongs so it can be decoupled and easily used elsewhere, then this book is for you.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software