1 install.inc public DatabaseTasks::validateDatabaseSettings($database)

Validates driver specific configuration settings.

Checks to ensure correct basic database settings and that a proper connection to the database can be established.


$database: An array of driver specific configuration options.

Return value

An array of driver configuration errors, keyed by form element name.:


core/includes/install.inc, line 672
API functions for installing modules and themes.


Database installer structure.


public function validateDatabaseSettings($database) {
  $errors = array();

  // Verify the table prefix.
  if (!empty($database['prefix']) && is_string($database['prefix']) && !preg_match('/^[A-Za-z0-9_.]+$/', $database['prefix'])) {
    $errors[$database['driver'] . '][advanced_options][prefix'] = st('The database table prefix you have entered, %prefix, is invalid. The table prefix can only contain alphanumeric characters, periods, or underscores.', array('%prefix' => $database['prefix']));

  // Verify the database port.
  if (!empty($database['port']) && !is_numeric($database['port'])) {
    $errors[$database['driver'] . '][advanced_options][port'] = st('Database port must be a number.');

  return $errors;