Le problème du '%' dans un fichier de configuration Symfony

image


| Mis à jour le :

Je suis récemment tombé sur la problématique d'ajouter le signe '%' en début de chaîne en tant que valeur dans un fichier de configuration sous Symfony.


Je me sers du signe % en début de chaîne pour une raison X et j'ai souhaité le définir en tant que valeur mon fichier config.yml.
Mais le '%' en début et / ou en fin de chaîne est interprété comme l'appel d'un lien vers un autre paramètre.

 

Afin de résoudre cette problématique, il faut ajouter deux signe %% afin d'annuler l'appel à un autre paramètre par défaut.

 

Voici un exemple afin d'obtenir la valeur %@domaine.com dans un contrôleur, service, ... :

# La valeur suivante est incorrect !
variable: '%@domaine.com'

# La valeur suivante est correct !
variable: '%%@domaine.com'

De cette manière, Symfony annulera tout seul le deuxième '%' et n'interprétera pas votre valeur comme l'appel à un autre paramètre 🙂.

C'est tout simple mais il faut le savoir.

 

L'exemple de l'appel à un autre paramètre :

variable_a: 'Hello word'

variable_b: '%variable_a%'
# variable_b est égale à : 'Hello word'