function ModuleInstallerInterface::install
Same name in other branches
- 9 core/lib/Drupal/Core/Extension/ModuleInstallerInterface.php \Drupal\Core\Extension\ModuleInstallerInterface::install()
- 8.9.x core/lib/Drupal/Core/Extension/ModuleInstallerInterface.php \Drupal\Core\Extension\ModuleInstallerInterface::install()
- 10 core/lib/Drupal/Core/Extension/ModuleInstallerInterface.php \Drupal\Core\Extension\ModuleInstallerInterface::install()
Installs a given list of modules.
Order of events:
- Gather and add module dependencies to $module_list (if applicable).
- For each module that is being installed:
- Invoke hook_module_preinstall().
- Install module schema and update system registries and caches.
- Invoke hook_install() and add it to the list of installed modules.
- Invoke hook_modules_installed().
To install test modules add
$settings['extension_discovery_scan_tests'] = TRUE;
to your settings.php.
Parameters
string[] $module_list: An array of module names.
bool $enable_dependencies: (optional) If TRUE, dependencies will automatically be installed in the correct order. This incurs a significant performance cost, so use FALSE if you know $module_list is already complete.
Return value
bool TRUE if the modules were successfully installed.
Throws
\Drupal\Core\Extension\MissingDependencyException Thrown when a requested module, or a dependency of one, can not be found.
\Drupal\Core\Extension\ExtensionNameLengthException Thrown when the extension's name is longer than DRUPAL_EXTENSION_NAME_MAX_LENGTH.
\Drupal\Core\Extension\ExtensionNameReservedException Thrown when a module's name is already used by an installed theme.
See also
2 methods override ModuleInstallerInterface::install()
- ModuleInstaller::install in core/
lib/ Drupal/ Core/ ProxyClass/ Extension/ ModuleInstaller.php - ModuleInstaller::install in core/
lib/ Drupal/ Core/ Extension/ ModuleInstaller.php
File
-
core/
lib/ Drupal/ Core/ Extension/ ModuleInstallerInterface.php, line 51
Class
- ModuleInstallerInterface
- Provides the installation of modules with creating the db schema and more.
Namespace
Drupal\Core\ExtensionCode
public function install(array $module_list, $enable_dependencies = TRUE);
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.