code: public static function get($varname, $default = null)
      {
          $originalValue = \getenv($varname);
          
          if ($originalValue === false) {
              return $default;
          }
          
          $trimmedValue = \trim($originalValue);
          
          if ($trimmedValue === '') {
              return $default;
          }
          
          $lowercasedTrimmedValue = \strtolower($trimmedValue);
          
          if ($lowercasedTrimmedValue === 'false') {
              return false;
          } elseif ($lowercasedTrimmedValue === 'true') {
              return true;
          } elseif ($lowercasedTrimmedValue === 'null') {
              return null;
          }
          
          return $trimmedValue;
      }
docs: Retrieve the value of the specified environment variable, translating
  values of 'true', 'false', and 'null' (case-insensitive) to their actual
  non-string values.
  
  PHP's built-in "getenv()" function returns a string (or false, if the
  environment variable is not set). If the value is 'false', then it will
  be returned as the string "false", which evaluates to true. This function
  is to check for that kind of string value and return the actual value
  that it refers to.
  
  NOTE:
  - If no value is available for the specified environment variable and
  no default value was provided, this function returns null (rather than
  returning false the way getenv() does).
  - At version 2.0.0, this method was changed to return the given default
  value even if the environment variable exists but has no value (or a
  value that only contains whitespace).
  
  @param string $varname The name of the desired environment variable.
  @param mixed $default The default value to return if the environment
  variable is not set or its value only contains whitespace.
  @return mixed The resulting value (if set to more than whitespace), or
  the given default value (if any, otherwise null).