Symfony Components
Symfony Components are a set of decoupled and reusable PHP libraries. Battle-tested in thousands of projects and downloaded billions of times, they've become the standard foundation on which the best PHP applications are built on. You can use any of these components in your own applications independently from the Symfony Framework.
Installation
Use Composer to install any of the Symfony Components in your PHP project:
$ composer require
Component List
Component | Description | Resources |
---|---|---|
Asset | Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files. | |
BrowserKit | Simulates the behavior of a web browser. | |
Cache | Implements PSR-6 and PSR-16 caching mechanisms and provides adapters for popular caching backends (Redis, Memcache, APCu, etc.) | |
ClassLoader Deprecated | Loads your project classes automatically if they follow some standard PHP conventions. | |
Config | Helps you find, load, combine, autofill and validate configuration values. | |
Console | Eases the creation of beautiful and testable command line interfaces. | |
Contracts | A set of abstractions extracted out of the Symfony components. | |
CssSelector | Converts CSS selectors to XPath expressions. | |
Debug Deprecated | Provides tools to ease debugging PHP code. | |
DependencyInjection | Allows you to standardize and centralize the way objects are constructed in your application. | |
DomCrawler | Eases DOM navigation for HTML and XML documents. | |
Dotenv | Parses .env files to make environment variables stored in them accessible via getenv(), $_ENV or $_SERVER. | |
ErrorHandler | Provides tools to manage errors and ease debugging PHP code. | |
EventDispatcher | Implements the Mediator pattern in a simple and effective way to make projects truly extensible. | |
ExpressionLanguage | Provides an engine that can compile and evaluate expressions. | |
Filesystem | Provides basic utilities for the filesystem. | |
Finder | Finds files and directories via an intuitive fluent interface. | |
Form | Provides tools to easy creating, processing and reusing HTML forms. | |
Guard | Brings many layers of authentication together, making it much easier to create complex authentication systems where you have total control. | |
HttpClient | A low-level HTTP client with support for both PHP stream wrappers and cURL. It also provides utilities to consume APIs. | |
HttpFoundation | Defines an object-oriented layer for the HTTP specification. | |
HttpKernel | Provides the building blocks to create flexible and fast HTTP-based frameworks. | |
Icu Deprecated | Contains the data of the ICU library in a specific version. This component is deprecated since October 2014, use the Intl component instead. | |
Inflector Deprecated | Converts English words between their singular and plural forms. | |
Intl | Provides fallback code to handle cases when the intl extension is missing. | |
Ldap | Provides an LDAP client for PHP on top of PHP's ldap extension. | |
Locale Deprecated | Provides fallback code to handle cases when the intl extension is missing. This component is deprecated since 2.3, use the Intl component instead. | |
Lock | Creates and manages locks, a mechanism to provide exclusive access to a shared resource. | |
Mailer | Helps sending emails and provides integration with the most popular mailing services. | |
Messenger | Helps applications send and receive messages to/from other applications or via message queues. | |
Mime | Allows manipulating MIME messages, used to create advanced email messages. | |
Notifier | Sends notifications via one or more channels (email, SMS, Slack, Telegram, ...) | |
OptionsResolver | Helps you configuring objects with option arrays. | |
PHPUnit Bridge | Provides utilities to report legacy tests and usage of deprecated code and a helper for time-sensitive tests. | |
Polyfill APCu | Provides apcu_* functions and the APCUIterator class to users of the legacy APC extension. | |
Polyfill Ctype | Provides a partial, native PHP implementation for the ctype extension. | |
Polyfill Iconv | Provides a native PHP implementation of the php.net/iconv functions. | |
Polyfill Intl Grapheme | Provides a partial, native PHP implementation of the Grapheme functions from the Intl extension. | |
Polyfill Intl ICU | Provides a collection of functions/classes using the symfony/intl package when the Intl extension is not installed. | |
Polyfill Intl IDN | Provides a collection of functions related to IDN when the Intl extension is not installed. | |
Polyfill Intl MessageFormatter | Provides a fallback implementation for the MessageFormatter class provided by the Intl extension. | |
Polyfill Intl Normalizer | Provides a fallback implementation for the Normalizer class provided by the Intl extension. | |
Polyfill Mbstring | Provides a partial, native PHP implementation for the Mbstring extension. | |
Polyfill PHP 5.4 | Provides functions unavailable in releases prior to PHP 5.4. | |
Polyfill PHP 5.5 | Provides functions unavailable in releases prior to PHP 5.5. | |
Polyfill PHP 5.6 | Provides functions unavailable in releases prior to PHP 5.6. | |
Polyfill PHP 7.0 | Provides functions unavailable in releases prior to PHP 7.0. | |
Polyfill PHP 7.1 | Provides functions unavailable in releases prior to PHP 7.1. | |
Polyfill PHP 7.2 | Provides functions unavailable in releases prior to PHP 7.2. | |
Polyfill PHP 7.3 | Provides functions unavailable in releases prior to PHP 7.3. | |
Polyfill UUID | Provides a native PHP implementation for the UUID extension. | |
Polyfill Util | Provides binary-safe string functions, using the mbstring extension when available. | |
Polyfill Xml Deprecated | Provides a fallback implementation for the following functions in the abscense of the XML extension. | |
Process | Executes commands in sub-processes. | |
PropertyAccess | Provides function to read and write from/to an object or array using a simple string notation. | |
PropertyInfo | Extracts information about the properties of PHP classes using metadata of popular sources (Doctrine, PHP Reflection, PHPdoc, etc.) | |
RateLimiter | Provides a Token Bucket implementation to rate limit input and output in your application (e.g. to implement login throttling). | |
Routing | Maps an HTTP request to a set of configuration variables. | |
Security | Provides an infrastructure for sophisticated authorization systems. | |
Semaphore | Creates and manages semaphores, a mechanism to control access to a common resource by multiple processes in a concurrent system . | |
Serializer | Turns objects into a specific format (XML, JSON, Yaml, ...) and the other way around. | |
Stopwatch | Provides a way to profile code. | |
String | Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way. It also provides a slugger and an inflector. | |
Templating | Provides all the tools needed to build any kind of template system. | |
Translation | Provides tools to internationalize your application. | |
Uid | Provides tools to work with unique identifiers such as UUIDs and ULIDs. | |
Validator | Provides tools to validate classes. | |
VarDumper | Provides mechanisms for walking through any arbitrary PHP variable. | |
VarExporter | Exports any serializable PHP data structure to plain PHP code and allows to instantiate and populate objects without calling their constructors. | |
WebLink | Implements HTML5 Links, Preload and Resource Hints specifications to advise clients (browsers) to preload and prefetch documents through HTTP and HTTP/2 pushes. | |
Webpack Encore | A simpler way to integrate Webpack into your application, giving you a powerful API for bundling JavaScript modules, pre-processing CSS & JS and compiling and minifying assets. | |
Workflow | Provides tools for managing a workflow or finite state machine. | |
Yaml | Loads and dumps YAML files. |