From bdf9efc78e7a34543be98b6e3e066c9590bb3fbd Mon Sep 17 00:00:00 2001 From: dsmink Date: Fri, 9 Feb 2018 13:27:46 +0100 Subject: [PATCH] Env var maps to undefined constant. When I try to use a constant as an environment variable, as described in the blog item, I run into the following problem. Env var "SOME_CONST" maps to undefined constant "App\\Util\\SomeClass::SOME_CONST". The proposed solution works for me, however, I'm not sure if this is the best and conform Symfony standards. Blog: https://symfony.com/blog/new-in-symfony-3-4-advanced-environment-variables --- src/Symfony/Component/DependencyInjection/EnvVarProcessor.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Symfony/Component/DependencyInjection/EnvVarProcessor.php b/src/Symfony/Component/DependencyInjection/EnvVarProcessor.php index bf34c593d6..508ebac966 100644 --- a/src/Symfony/Component/DependencyInjection/EnvVarProcessor.php +++ b/src/Symfony/Component/DependencyInjection/EnvVarProcessor.php @@ -110,11 +110,13 @@ class EnvVarProcessor implements EnvVarProcessorInterface } if ('const' === $prefix) { + $env = \str_replace("\\\\","\\", $env); + if (!defined($env)) { throw new RuntimeException(sprintf('Env var "%s" maps to undefined constant "%s".', $name, $env)); } - return constant($name); + return constant($env); } if ('base64' === $prefix) {