Same name and namespace in other branches
  1. 10 core/includes/install.inc \drupal_detect_database_types()
  2. 5.x includes/install.inc \drupal_detect_database_types()
  3. 7.x includes/install.inc \drupal_detect_database_types()
  4. 8.9.x core/includes/install.inc \drupal_detect_database_types()
  5. 9 core/includes/install.inc \drupal_detect_database_types()

Detect all databases supported by Drupal that are compiled into the current PHP installation.

Return value

An array of database types compiled into PHP.

2 calls to drupal_detect_database_types()
install_settings_form in ./install.php
Form API array definition for install_settings.
_install_settings_form_validate in ./install.php
Helper function for install_settings_validate.

File

includes/install.inc, line 151

Code

function drupal_detect_database_types() {
  $databases = array();
  foreach (array(
    'mysql',
    'mysqli',
    'pgsql',
  ) as $type) {
    if (file_exists('./includes/install.' . $type . '.inc')) {
      include_once './includes/install.' . $type . '.inc';
      $function = $type . '_is_available';
      if ($function()) {
        $databases[$type] = $type;
      }
    }
  }
  return $databases;
}