You are here

public function ModuleHandler::invokeAll in Drupal 10

Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Extension/ModuleHandler.php \Drupal\Core\Extension\ModuleHandler::invokeAll()
  2. 9 core/lib/Drupal/Core/Extension/ModuleHandler.php \Drupal\Core\Extension\ModuleHandler::invokeAll()

File

core/lib/Drupal/Core/Extension/ModuleHandler.php, line 406

Class

ModuleHandler
Class that manages modules in a Drupal installation.

Namespace

Drupal\Core\Extension

Code

public function invokeAll($hook, array $args = []) {
  $return = [];
  $this
    ->invokeAllWith($hook, function (callable $hook, string $module) use ($args, &$return) {
    $result = call_user_func_array($hook, $args);
    if (isset($result) && is_array($result)) {
      $return = NestedArray::mergeDeep($return, $result);
    }
    elseif (isset($result)) {
      $return[] = $result;
    }
  });
  return $return;
}