public function ModuleHandler::invokeAll in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Extension/ModuleHandler.php \Drupal\Core\Extension\ModuleHandler::invokeAll()
Invokes a hook in all enabled modules that implement it.
Parameters
string $hook: The name of the hook to invoke.
array $args: Arguments to pass to the hook.
Return value
array An array of return values of the hook implementations. If modules return arrays from their implementations, those are merged into one array.
Overrides ModuleHandlerInterface::invokeAll
File
- core/
lib/ Drupal/ Core/ Extension/ ModuleHandler.php, line 388 - Contains \Drupal\Core\Extension\ModuleHandler.
Class
- ModuleHandler
- Class that manages modules in a Drupal installation.
Namespace
Drupal\Core\ExtensionCode
public function invokeAll($hook, array $args = array()) {
$return = array();
$implementations = $this
->getImplementations($hook);
foreach ($implementations as $module) {
$function = $module . '_' . $hook;
$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;
}