public function ModuleHandler::invokeAll

Implements \Drupal\Core\Extension\ModuleHandlerInterface::invokeAll().

Overrides ModuleHandlerInterface::invokeAll

3 calls to ModuleHandler::invokeAll()
ModuleHandler::disable in drupal/core/lib/Drupal/Core/Extension/ModuleHandler.php
Disables a given set of modules.
ModuleHandler::enable in drupal/core/lib/Drupal/Core/Extension/ModuleHandler.php
Enables or installs a given list of modules.
ModuleHandler::uninstall in drupal/core/lib/Drupal/Core/Extension/ModuleHandler.php
Uninstalls a given list of disabled modules.

File

drupal/core/lib/Drupal/Core/Extension/ModuleHandler.php, line 306
Contains Drupal\Core\Extension\ModuleHandler.

Class

ModuleHandler
Class that manages enabled modules in a Drupal installation.

Namespace

Drupal\Core\Extension

Code

public function invokeAll($hook, $args = array()) {
  $return = array();
  $implementations = $this
    ->getImplementations($hook);
  foreach ($implementations as $module) {
    $function = $module . '_' . $hook;
    if (function_exists($function)) {
      $result = call_user_func_array($function, $args);
      if (isset($result) && is_array($result)) {
        $return = NestedArray::mergeDeep($return, $result);
      }
      elseif (isset($result)) {
        $return[] = $result;
      }
    }
  }
  return $return;
}