src/Dev/Install/Installer.php
protected function writeConfigEnv($config)
    {
        if (!$config['usingEnv']) {
            return;
        }

        $path = $this->getBaseDir() . '.env';
        $vars = [];

        // Retain existing vars
        $env = new EnvironmentLoader();
        if (file_exists($path)) {
            $vars = $env->loadFile($path) ?: [];
        }

        // Set base URL
        if (!isset($vars['SS_BASE_URL']) && isset($_SERVER['HTTP_HOST'])) {
            $vars['SS_BASE_URL'] = 'http://' . $_SERVER['HTTP_HOST'] . BASE_URL;
        }

        // Set DB env
        if (empty($config['db']['database'])) {
            $vars['SS_DATABASE_CHOOSE_NAME'] = true;
        } else {
            $vars['SS_DATABASE_NAME'] = $config['db']['database'];
        }
        $vars['SS_DATABASE_CLASS'] = $config['db']['type'];
        if (isset($config['db']['server'])) {
            $vars['SS_DATABASE_SERVER'] = $config['db']['server'];
        }
        if (isset($config['db']['username'])) {
            $vars['SS_DATABASE_USERNAME'] = $config['db']['username'];
        }
        if (isset($config['db']['password'])) {
            $vars['SS_DATABASE_PASSWORD'] = $config['db']['password'];
        }
        if (isset($config['db']['path'])) {
            $vars['SS_DATABASE_PATH'] = $config['db']['path'];
            // sqlite compat
            $vars['SS_SQLITE_DATABASE_PATH'] = $config['db']['path'];
        }
        if (isset($config['db']['key'])) {
            $vars['SS_DATABASE_KEY'] = $config['db']['key'];
            // sqlite compat
            $vars['SS_SQLITE_DATABASE_KEY'] = $config['db']['key'];
        }

        // Write all env vars
        $lines = [
            '# Generated by SilverStripe Installer'
        ];
        ksort($vars);
        foreach ($vars as $key => $value) {
            $lines[] = $key . '="' . addcslashes($value, '"') . '"';
        }

        $this->writeToFile('.env', implode("\n", $lines));

        // Re-load env vars for installer access
        $env->loadFile($path);
    }
protected function writeConfigEnv($config)
    {
        if (!$config['usingEnv']) {
            return;
        }

        $path = $this->getBaseDir() . '.env';
        $vars = [];

        // Retain existing vars
        $env = new EnvironmentLoader();
        if (file_exists($path)) {
            $vars = $env->loadFile($path) ?: [];
        }

        // Set base URL
        if (!isset($vars['SS_BASE_URL']) && isset($_SERVER['HTTP_HOST'])) {
            $vars['SS_BASE_URL'] = 'http://' . $_SERVER['HTTP_HOST'] . BASE_URL;
        }

        // Set DB env
        if (empty($config['db']['database'])) {
            $vars['SS_DATABASE_CHOOSE_NAME'] = true;
        } else {
            $vars['SS_DATABASE_NAME'] = $config['db']['database'];
        }
        $vars['SS_DATABASE_CLASS'] = $config['db']['type'];
        if (isset($config['db']['server'])) {
            $vars['SS_DATABASE_SERVER'] = $config['db']['server'];
        }
        if (isset($config['db']['username'])) {
            $vars['SS_DATABASE_USERNAME'] = $config['db']['username'];
        }
        if (isset($config['db']['password'])) {
            $vars['SS_DATABASE_PASSWORD'] = $config['db']['password'];
        }
        if (isset($config['db']['path'])) {
            $vars['SS_DATABASE_PATH'] = $config['db']['path'];
            // sqlite compat
            $vars['SS_SQLITE_DATABASE_PATH'] = $config['db']['path'];
        }
        if (isset($config['db']['key'])) {
            $vars['SS_DATABASE_KEY'] = $config['db']['key'];
            // sqlite compat
            $vars['SS_SQLITE_DATABASE_KEY'] = $config['db']['key'];
        }

        // Write all env vars
        $lines = [
            '# Generated by SilverStripe Installer'
        ];
        ksort($vars);
        foreach ($vars as $key => $value) {
            $lines[] = $key . '="' . addcslashes($value, '"') . '"';
        }

        $this->writeToFile('.env', implode("\n", $lines));

        // Re-load env vars for installer access
        $env->loadFile($path);
    }
protected function writeConfigEnv ( $ config ) { if ( ! $ config [ 'usingEnv' ] ) { return ; } $ path = $ this -> getBaseDir ( ) . '.env' ; $ vars = [ ] ; // Retain existing vars $ env = new EnvironmentLoader ( ) ; if ( file_exists ( $ path ) ) { $ vars = $ env -> loadFile ( $ path ) ? : [ ] ; } // Set base URL if ( ! isset ( $ vars [ 'SS_BASE_URL' ] ) && isset ( $ _SERVER [ 'HTTP_HOST' ] ) ) { $ vars [ 'SS_BASE_URL' ] = 'http://' . $ _SERVER [ 'HTTP_HOST' ] . BASE_URL ; } // Set DB env if ( empty ( $ config [ 'db' ] [ 'database' ] ) ) { $ vars [ 'SS_DATABASE_CHOOSE_NAME' ] = true ; } else { $ vars [ 'SS_DATABASE_NAME' ] = $ config [ 'db' ] [ 'database' ] ; } $ vars [ 'SS_DATABASE_CLASS' ] = $ config [ 'db' ] [ 'type' ] ; if ( isset ( $ config [ 'db' ] [ 'server' ] ) ) { $ vars [ 'SS_DATABASE_SERVER' ] = $ config [ 'db' ] [ 'server' ] ; } if ( isset ( $ config [ 'db' ] [ 'username' ] ) ) { $ vars [ 'SS_DATABASE_USERNAME' ] = $ config [ 'db' ] [ 'username' ] ; } if ( isset ( $ config [ 'db' ] [ 'password' ] ) ) { $ vars [ 'SS_DATABASE_PASSWORD' ] = $ config [ 'db' ] [ 'password' ] ; } if ( isset ( $ config [ 'db' ] [ 'path' ] ) ) { $ vars [ 'SS_DATABASE_PATH' ] = $ config [ 'db' ] [ 'path' ] ; // sqlite compat $ vars [ 'SS_SQLITE_DATABASE_PATH' ] = $ config [ 'db' ] [ 'path' ] ; } if ( isset ( $ config [ 'db' ] [ 'key' ] ) ) { $ vars [ 'SS_DATABASE_KEY' ] = $ config [ 'db' ] [ 'key' ] ; // sqlite compat $ vars [ 'SS_SQLITE_DATABASE_KEY' ] = $ config [ 'db' ] [ 'key' ] ; } // Write all env vars $ lines = [ '# Generated by SilverStripe Installer' ] ; ksort ( $ vars ) ; foreach ( $ vars as $ key => $ value ) { $ lines [ ] = $ key . '="' . addcslashes ( $ value , '"' ) . '"' ; } $ this -> writeToFile ( '.env' , implode ( "\n" , $ lines ) ) ; // Re-load env vars for installer access $ env -> loadFile ( $ path ) ; }
Write all .env files

@param $config
Write all . env files