Bolt\Config::parseConnectionParams PHP Method

parseConnectionParams() protected method

Parses params to valid connection parameters: - Defaults are merged into the params - Bolt keys are converted to Doctrine keys - Invalid keys are filtered out
protected parseConnectionParams ( array | string $params, array $defaults = [] ) : array
$params array | string
$defaults array
return array
    protected function parseConnectionParams($params, $defaults = [])
    {
        // Handle host shortcut
        if (is_string($params)) {
            $params = ['host' => $params];
        }
        // Convert keys from Bolt
        $replacements = ['databasename' => 'dbname', 'username' => 'user'];
        foreach ($replacements as $old => $new) {
            if (isset($params[$old])) {
                $params[$new] = $params[$old];
                unset($params[$old]);
            }
        }
        // Merge in defaults
        $params = array_replace($defaults, $params);
        // Filter out invalid keys
        $validKeys = ['user', 'password', 'host', 'port', 'dbname', 'charset', 'path', 'memory', 'unix_socket', 'driverOptions', 'sslmode', 'servicename', 'service', 'pooled', 'instancename', 'server', 'persistent'];
        $params = array_intersect_key($params, array_flip($validKeys));
        return $params;
    }