diff --git a/files/usr/local/lib/php-fpm-env/PhpFpmEnvironment.php b/files/usr/local/lib/php-fpm-env/PhpFpmEnvironment.php
index 31f4d1e..61788c5 100755
--- a/files/usr/local/lib/php-fpm-env/PhpFpmEnvironment.php
+++ b/files/usr/local/lib/php-fpm-env/PhpFpmEnvironment.php
@@ -1,77 +1,103 @@
 #!/usr/bin/env php
 <?php
 
 /**
  * Allows to get the content of a php-fpm environment configuration file
  */
 class PhpFpmEnvironment {
     /**
      * The temporary directory, used in TMP, TEMP and TMPDIR environment variables
      * @var string
      */
     const TMP = '/tmp';
 
     /**
      * The path where to find executables, where sbin should be excluded if you don't run PHP as root.
      * @var string
      */
     const PATH = '/usr/local/bin:/usr/bin:/bin';
 
     /**
      * The environment variables to discard
      * @var Array
      */
     const VARIABLES_TO_DISCARD = [
         '_',           // The caller executable script, not pertinent
         'HOME',        // Set correctly by php-fpm
         'TERM',        // Not pertinent in server context
         'MYSQL_ENV_MYSQL_ROOT_PASSWORD', // from --link …:mysql
     ];
 
     /**
      * Gets an environment array from the current process environment,
      * with PATH and temp variablesfiltered.
      *
      * @return Array
      */
     public static function getEnvironmentVariables () {
         $variables = [];
 
         foreach ($_ENV as $key => $value) {
-            if (static::mustIgnoreVariable($key)) {
-                continue;
+            if (!static::mustIgnoreVariable($key)) {
+	            $variables[$key] = $value;
             }
-
-            $variables[$key] = $value;
         }
 
-        $variables['PATH'] = static::PATH;
+        static::addHardcodedEnvironmentVariables($variables);
+
+        return $variables;
+    }
+
+    /**
+     * Adds hardcoded and always wanted environment variables
+     * (path, temporary directory) to the specified array.
+     *
+     * @paran array $variables the array to add the variables to
+     */
+    public static function addHardcodedEnvironmentVariables (&$variables) {
+        static::addTempEnvironmentVariables ($variables);
+        static::addPathEnvironmentVariables ($variables);
+    }
+
+    /**
+     * Adds temporary directory environment variables to the specified array.
+     *
+     * @paran array $variables the array to add the variables to
+     */
+    public static function addTempEnvironmentVariables (&$variables) {
         $variables['TMP'] = static::TMP;
         $variables['TEMP'] = static::TMP;
         $variables['TMPDIR'] = static::TMP;
+    }
 
-        return $variables;
+    /**
+     * Adds temporary directory environment variables to the specified array.
+     *
+     * @paran array $variables the array to add the variables to
+     */
+    public static function addPathEnvironmentVariables (&$variables) {
+        $variables['PATH'] = static::PATH;
     }
 
     /**
      * Determines if the variable name must be ignored
      *
      * @return bool true if the variable must be ignored; otherwise, false.
      */
     public static function mustIgnoreVariable ($variableName) {
         return in_array($variableName, static::VARIABLES_TO_DISCARD);
     }
 
     /**
      * Prints the environment
      */
     public static function printConfig () {
         $variables = static::getEnvironmentVariables();
 
         foreach ($variables as $key => $value) {
             echo 'env["', $key, '"] = "', $value, '"', PHP_EOL;
         }
     }
 }
 
 PhpFpmEnvironment::printConfig();