protected static function getGlobalValue($key)
    {
        if (isset($_SERVER[$key]) && static::validate($_SERVER[$key])) {
            return $_SERVER[$key];
        }

        if (isset($_ENV[$key]) && static::validate($_ENV[$key])) {
            return $_ENV[$key];
        }

        if (@getenv($key) && static::validate(getenv($key))) {
            return getenv($key);
        }

        return null;
    }