Symfony

Symfony is a free and open-source PHP web application framework and a set of reusable PHP component libraries. It was published as free software on October 18, 2005, and released under the MIT License.

Goal

Symfony aims to speed up the creation and maintenance of web applications and to replace repetitive coding tasks. It's also aimed at building robust applications in an enterprise context, and aims to give developers full control over the configuration: from the directory structure to third-party libraries, almost everything can be customized. To match enterprise development guidelines, Symfony is bundled with additional tools to help developers test, debug and document projects.

Symfony has a low performance overhead used with a bytecode cache.

Technical

Symfony was heavily inspired by the Spring Framework.

It makes heavy use of existing PHP open-source projects as part of the framework, including:

Symfony also makes use of its own components, which are freely available on the Symfony Components site for various other projects:

  • Symfony YAML, a YAML parser based upon Spyc
  • Symfony Event Dispatcher
  • Symfony Dependency Injector, a dependency injector
  • Symfony Templating, a templating engine

Sponsors

Symfony is sponsored by SensioLabs, a French software developer and professional services provider. The first name was Sensio Framework, and all classes were therefore prefixed with sf. Later on when it was decided to launch it as open-source framework, the brainstorming resulted in the name symfony (being renamed to Symfony from version 2 and on), which matches the existing theme and class name prefixes.

Real-world usage

  • Symfony is used by the open-source Q&A service Askeet and many more applications, including Delicious website.
  • At one time it was used for 20 million users of Yahoo! Bookmarks.
  • As of February 2009, Dailymotion.com has ported part of its code to use Symfony, and is continuing the transition.
  • Symfony is used by OpenSky, a social shopping platform, and the Symfony framework is also used by the massively multiplayer online browser game eRepublik, and by the content management framework eZ Publish in version 5.
  • Drupal 8, phpBB and a number of other large applications have incorporated components of Symfony.
  • Symfony is also used by Meetic, one of the largest online dating platforms in the world, on most of its websites for implementing its business logic in the backend.
  • Symfony components are also used in other web application frameworks including Laravel, which is another full-stack framework, and Silex, which is a microframework.
  • Vogue Paris's website is also built on the Symfony framework

Symfony's own website has a comprehensive list of projects using Symfony and a showcase of websites built with Symfony.

Releases

Symfony manages its releases through a time-based model; a new Symfony release comes out every six months: one in May and one in November. This release process has been adopted as of Symfony 2.2, and all the "rules" explained in this document must be strictly followed as of Symfony 2.4.

The standard version of Symfony is maintained for eight months, whereas long-term support (LTS) versions are supported for three years. A new LTS release is published biennially.

The latest stable release is version 7.2 and current LTS release is version 6.4.

See also

References

Further reading

Uses material from the Wikipedia article Symfony, released under the CC BY-SA 4.0 license.