Formatters are the set of filters that can be assigned to data.


To create your own formatter, create a new service and tag it with the oro_formatter tag.

This tag has the following attributes:

  • formatter - The formatter name. It is mandatory attribute.

  • data_type - The data type name for which the formatter should be used by default.


    class: Acme\Bundle\DemoBundle\Formatter\SomeFormatter
        - { name: oro_formatter, formatter: some_formatter }

The service class should implement the Oro\Bundle\UIBundle\Formatter\FormatterInterface interface.


To apply a formatter, use the oro_ui.formatter service.

This manager has method format that applies the given formatter to the parameter:

use Oro\Bundle\UIBundle\Formatter\FormatterManager;

protected FormatterManager $formatterManager

$date = new \DateTime();
$formattedValue = $this->formatterManager->format($date, 'datetime');

In this example, formatter datetime applies to the $date variable.

To use formatters from the twig templates, use the oro_format filter:

{{ datetimeVar|oro_format('datetime') }}