function Connection::__construct

Same name in this branch
  1. 10 core/modules/sqlite/src/Driver/Database/sqlite/Connection.php \Drupal\sqlite\Driver\Database\sqlite\Connection::__construct()
  2. 10 core/modules/mysql/src/Driver/Database/mysql/Connection.php \Drupal\mysql\Driver\Database\mysql\Connection::__construct()
  3. 10 core/modules/pgsql/src/Driver/Database/pgsql/Connection.php \Drupal\pgsql\Driver\Database\pgsql\Connection::__construct()
Same name and namespace in other branches
  1. 9 core/modules/sqlite/src/Driver/Database/sqlite/Connection.php \Drupal\sqlite\Driver\Database\sqlite\Connection::__construct()
  2. 9 core/modules/mysql/src/Driver/Database/mysql/Connection.php \Drupal\mysql\Driver\Database\mysql\Connection::__construct()
  3. 9 core/modules/pgsql/src/Driver/Database/pgsql/Connection.php \Drupal\pgsql\Driver\Database\pgsql\Connection::__construct()
  4. 9 core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::__construct()
  5. 8.9.x core/modules/system/tests/modules/driver_test/src/Driver/Database/DrivertestMysqlDeprecatedVersion/Connection.php \Drupal\driver_test\Driver\Database\DrivertestMysqlDeprecatedVersion\Connection::__construct()
  6. 8.9.x core/lib/Drupal/Core/Database/Driver/sqlite/Connection.php \Drupal\Core\Database\Driver\sqlite\Connection::__construct()
  7. 8.9.x core/lib/Drupal/Core/Database/Driver/mysql/Connection.php \Drupal\Core\Database\Driver\mysql\Connection::__construct()
  8. 8.9.x core/lib/Drupal/Core/Database/Driver/pgsql/Connection.php \Drupal\Core\Database\Driver\pgsql\Connection::__construct()
  9. 8.9.x core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::__construct()
  10. 11.x core/modules/sqlite/src/Driver/Database/sqlite/Connection.php \Drupal\sqlite\Driver\Database\sqlite\Connection::__construct()
  11. 11.x core/modules/mysql/src/Driver/Database/mysql/Connection.php \Drupal\mysql\Driver\Database\mysql\Connection::__construct()
  12. 11.x core/modules/pgsql/src/Driver/Database/pgsql/Connection.php \Drupal\pgsql\Driver\Database\pgsql\Connection::__construct()
  13. 11.x core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::__construct()
  14. 11.x core/modules/mysqli/src/Driver/Database/mysqli/Connection.php \Drupal\mysqli\Driver\Database\mysqli\Connection::__construct()

Constructs a Connection object.

Parameters

object $connection: An object of the client class representing a database connection.

array $connection_options: An array of options for the connection. May include the following:

  • prefix
  • namespace
  • Other driver-specific options.
4 calls to Connection::__construct()
Connection::__construct in core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
Constructs a \Drupal\sqlite\Driver\Database\sqlite\Connection object.
Connection::__construct in core/modules/mysql/src/Driver/Database/mysql/Connection.php
Constructs a Connection object.
Connection::__construct in core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
Constructs a connection object.
StubConnection::__construct in core/tests/Drupal/Tests/Core/Database/Stub/StubConnection.php
Constructs a Connection object.
4 methods override Connection::__construct()
Connection::__construct in core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
Constructs a \Drupal\sqlite\Driver\Database\sqlite\Connection object.
Connection::__construct in core/modules/mysql/src/Driver/Database/mysql/Connection.php
Constructs a Connection object.
Connection::__construct in core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
Constructs a connection object.
StubConnection::__construct in core/tests/Drupal/Tests/Core/Database/Stub/StubConnection.php
Constructs a Connection object.

File

core/lib/Drupal/Core/Database/Connection.php, line 256

Class

Connection
Base Database API class.

Namespace

Drupal\Core\Database

Code

public function __construct(object $connection, array $connection_options) {
  assert(count($this->identifierQuotes) === 2 && Inspector::assertAllStrings($this->identifierQuotes), '\\Drupal\\Core\\Database\\Connection::$identifierQuotes must contain 2 string values');
  // Manage the table prefix.
  $connection_options['prefix'] = $connection_options['prefix'] ?? '';
  $this->setPrefix($connection_options['prefix']);
  // Work out the database driver namespace if none is provided. This normally
  // written to setting.php by installer or set by
  // \Drupal\Core\Database\Database::parseConnectionInfo().
  if (empty($connection_options['namespace'])) {
    $connection_options['namespace'] = (new \ReflectionObject($this))->getNamespaceName();
  }
  $this->connection = $connection;
  $this->connectionOptions = $connection_options;
}

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