function Database::addConnectionInfo

Same name in other branches
  1. 7.x includes/database/database.inc \Database::addConnectionInfo()
  2. 9 core/lib/Drupal/Core/Database/Database.php \Drupal\Core\Database\Database::addConnectionInfo()
  3. 10 core/lib/Drupal/Core/Database/Database.php \Drupal\Core\Database\Database::addConnectionInfo()
  4. 11.x core/lib/Drupal/Core/Database/Database.php \Drupal\Core\Database\Database::addConnectionInfo()

Adds database connection information for a given key/target.

This method allows to add new connections at runtime.

Under normal circumstances the preferred way to specify database credentials is via settings.php. However, this method allows them to be added at arbitrary times, such as during unit tests, when connecting to admin-defined third party databases, etc.

If the given key/target pair already exists, this method will be ignored.

Parameters

string $key: The database key.

string $target: The database target name.

array $info: The database connection information, as defined in settings.php. The structure of this array depends on the database driver it is connecting to.

38 calls to Database::addConnectionInfo()
ConnectionTest::testConnectionOptions in core/tests/Drupal/KernelTests/Core/Database/ConnectionTest.php
Tests the connection options of the active database.
ConnectionTest::testConnectionRouting in core/tests/Drupal/KernelTests/Core/Database/ConnectionTest.php
Tests that connections return appropriate connection objects.
ConnectionTest::testConnectionRoutingOverride in core/tests/Drupal/KernelTests/Core/Database/ConnectionTest.php
Tests that connections return appropriate connection objects.
ConnectionUnitTest::addConnection in core/tests/Drupal/KernelTests/Core/Database/ConnectionUnitTest.php
Adds a new database connection info to Database.
ConnectionUnitTest::setUp in core/tests/Drupal/KernelTests/Core/Database/ConnectionUnitTest.php

... See full list

File

core/lib/Drupal/Core/Database/Database.php, line 254

Class

Database
Primary front-controller for the database system.

Namespace

Drupal\Core\Database

Code

public static final function addConnectionInfo($key, $target, array $info) {
    if (empty(self::$databaseInfo[$key][$target])) {
        self::$databaseInfo[$key][$target] = self::parseConnectionInfo($info);
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.