function hook_modules_uninstalled in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Extension/module.api.php \hook_modules_uninstalled()
- 7 modules/system/system.api.php \hook_modules_uninstalled()
- 10 core/lib/Drupal/Core/Extension/module.api.php \hook_modules_uninstalled()
Perform necessary actions after modules are uninstalled.
This function differs from hook_uninstall() in that it gives all other modules a chance to perform actions when a module is uninstalled, whereas hook_uninstall() is only called on the module actually being uninstalled.
It is recommended that you implement this hook if your module stores data that may have been set by other modules.
Parameters
$modules: An array of the modules that were uninstalled.
bool $is_syncing: TRUE if the module is being uninstalled as part of a configuration import. In these cases, your hook implementation needs to carefully consider what changes, if any, it should make. For example, it should not make any changes to configuration objects or entities.
See also
Related topics
7 functions implement hook_modules_uninstalled()
Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.
- help_topics_modules_uninstalled in core/
modules/ help_topics/ help_topics.module - Implements hook_modules_uninstalled().
- language_modules_uninstalled in core/
modules/ language/ language.module - Implements hook_modules_uninstalled().
- module_test_modules_uninstalled in core/
modules/ system/ tests/ modules/ module_test/ module_test.module - Implements hook_modules_uninstalled().
- node_modules_uninstalled in core/
modules/ node/ node.module - Implements hook_modules_uninstalled().
- system_modules_uninstalled in core/
modules/ system/ system.module - Implements hook_modules_uninstalled().
1 invocation of hook_modules_uninstalled()
- ModuleInstaller::uninstall in core/
lib/ Drupal/ Core/ Extension/ ModuleInstaller.php - Uninstalls a given list of modules.
File
- core/
lib/ Drupal/ Core/ Extension/ module.api.php, line 277 - Hooks related to module and update systems.
Code
function hook_modules_uninstalled($modules, $is_syncing) {
if (in_array('lousy_module', $modules)) {
\Drupal::state()
->delete('mymodule.lousy_module_compatibility');
}
mymodule_cache_rebuild();
if (!$is_syncing) {
\Drupal::service('mymodule.service')
->doSomething($modules);
}
}