Env Var processors allow to transform the value of environment variables before using them in the Symfony app configuration. They are useful for example to transform the type of the env var (which, by definition is always a string) into a more suitable type, such as an integer or a boolean. In Symfony 4.3 we added new processors to provide new transformations.

Default Env Var Processor

Jérémy Derussé
Contributed by Jérémy Derussé in #28976

It returns a default value when the given env var is not defined. It uses this syntax: env(default:DEFAULT_VALUE:ENV_VAR_NAME). You can combine it with any of the other env vars to do advanced things like the following:

1
2
3
4
# config/services.yaml
parameters:
    private_key: '%env(default:default_key:file:PRIVATE_KEY)%'
    default_key: '%env(PRIVATE_KEY)%'

Trim Env Var Processor

Maxime Steinhausser
Contributed by Maxime Steinhausser in #29781

It applies the trim() PHP function to the value of the env var before returning it. It's especially useful in combination with the file processor, as it'll remove newlines at the end of a file:

1
2
3
# config/services.yaml
parameters:
    private_key: '%env(trim:file:PRIVATE_KEY)%'
Published in #Living on the edge