function ModuleHandler::invokeAll

Same name in other branches
  1. 8.9.x core/lib/Drupal/Core/Extension/ModuleHandler.php \Drupal\Core\Extension\ModuleHandler::invokeAll()
  2. 10 core/lib/Drupal/Core/Extension/ModuleHandler.php \Drupal\Core\Extension\ModuleHandler::invokeAll()
  3. 11.x core/lib/Drupal/Core/Extension/ModuleHandler.php \Drupal\Core\Extension\ModuleHandler::invokeAll()

Overrides ModuleHandlerInterface::invokeAll

1 call to ModuleHandler::invokeAll()
ModuleHandler::invokeAllDeprecated in core/lib/Drupal/Core/Extension/ModuleHandler.php
Invokes a deprecated hook in all enabled modules that implement it.

File

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

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;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.