Software:Silex (web framework)

From HandWiki
Silex
Original author(s)Fabien Potencier and Igor Wiedler
Developer(s)Silex contributors, SensioLabs
Initial release16 September 2010 (2010-09-16)
Final release
2.3.0[1] / 20 April 2018 (2018-04-20)
Written inPHP
Operating systemCross-platform
TypeWeb framework
LicenseMIT License
Website{{{1}}}

Silex is a micro web framework written in PHP and based on Symfony, Twig (template engine) and Doctrine (database abstraction). It is no more supported since June 2018.[2]

The general purpose of Silex is to be as lightweight as you need it to be, as it is made for it to be as easy as possible to add features and extend the Silex base.[3] Silex can be used for the creation of small web applications (e.g. REST APIs) as this is the main case for micro frameworks,[4] however Silex can be extended into a full stack MVC framework.[5]

Silex comes in two available versions; 'fat' and 'slim'.[6] The difference between these being that the fat version is fully featured and includes database abstraction, a template engine and various Symfony components. Whereas the slim version just comes with a basic routing engine.

Features

The base feature set is a URL routing system, built-in Web Security, Sessions and Cookies abstraction. The extended version of Silex features integration of Twig, Doctrine, a Translation service for translating your application into different languages, a logging mechanism using the Monolog library to log requests and errors, services for form validation and generation, and more.[7]

History

Silex was originally created by Fabien Potencier, the creator of the Symfony framework, and Igor Wiedler.[8] It was first released 16 September 2010 (2010-09-16) as a 'web framework proof-of-concept'.[9]

Silex was at its time one of the best known micro frameworks for PHP[10] and was regularly placed among the fastest in benchmarks for micro framework comparisons.[11][12]

Silex became end-of-life in June 2018 with people being encouraged to use Symfony instead.[13][2]

Example

The following code shows a simple web application that prints "Hello World!":

$app = new Silex\Application();

$app->get('/', function() use($app) { 
    return 'Hello World!';
});

$app->run();

See also

References

External links