Download the PHP package mhujer/consistence-bundle without Composer
On this page you can find all versions of the php package mhujer/consistence-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download mhujer/consistence-bundle
More information about mhujer/consistence-bundle
Files in mhujer/consistence-bundle
Package consistence-bundle
Short Description Add translator and form elements for enums from consistence/consistence
License MIT
Homepage https://github.com/mhujer/consistence-bundle
Informations about the package consistence-bundle
ConsistenceBundle adds translator service, translator twig filter and form type for Consistence Enums
This Bundle provides translator service, translator twig filter and form type for consistence/consistence enums.
Installation
Applications that use Symfony Flex
Open a command console, enter your project directory and execute:
Applications that don't use Symfony Flex
Step 1: Download the Bundle
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.
Step 2: Enable the Bundle
Then, enable the bundle by adding it to the list of registered bundles
in the config/bundles.php
file of your project:
Usage
Examples consider having the following enum:
Translation file
The translator automatically converts an instance of enum to a translation key consisting of FQCN of the enum, colon and its value, e.g.:
Best approach is to create a translation file using the PHP format (enums.en.php
) which allows you to use the class name:
As you might have noticed, the translation domain is set to enums
.
Twig
In Twig templates you can use transEnum
filter to convert an enum to a translated string:
Translation domain
Sometimes it is useful to have different translations for the same enum (e.g. when the enum is used in admin and frontend UI). This is achieved by an translationDomain
parameter which can be passed to transEnum
:
It loads translations transparently from another domain using Symfony translator:
Forms
In forms, you can use EnumType
as a field type. You need to set an option enum_class
to an enum class:
Property in your request object should look like this (it contains an instance of CardColor
):
Requirements
Works with PHP 7.4 or higher and Symfony 5.4 or higher.
Submitting bugs and feature requests
Bugs and feature request are tracked on GitHub
Author
Changelog
2.0.1 (2023-12-09)
- add Symfony 7 and PHP 8.2 support (dfridrich)
2.0.0 (2022-09-20)
- require PHP 8.1
- add support for native enums to make migration easier
1.4.0 (2021-12-04)
- require Symfony 5.4+
- allow PHP 8.1
- allow Symfony 6.0
1.3.0 (2021-06-10)
- BC break: optional parameter in
transEnum
is treated as translation domain
1.2.0 (2021-06-03)
- add optional parameter
$enumNamespace
totransEnum
method
1.1.0 (2021-02-28)
- allow PHP 8.0
- require PHP 7.4+
1.0.2 (2020-01-13)
- Fixed #3: Undefined "translator" dependency in services.yaml
1.0.1 (2019-11-24)
- Symfony 5 and Twig 3 compatibility
1.0.0 (2019-11-06)
- initial release
All versions of consistence-bundle with dependencies
consistence-community/consistence Version ~2.1
symfony/config Version ^5.4||^6.0||^7.0
symfony/dependency-injection Version ^5.4||^6.0||^7.0
symfony/form Version ^5.4||^6.0||^7.0
symfony/http-kernel Version ^5.4||^6.0||^7.0
symfony/translation Version ^5.4||^6.0||^7.0
symfony/yaml Version ^5.4||^6.0||^7.0
twig/twig Version ^1.41.0 || ^2.12.1 || ^3.0