public ModuleHandler::invokeAll($hook, array $args = array())
Invokes a hook in all enabled modules that implement it.
string $hook: The name of the hook to invoke.
array $args: Arguments to pass to the hook.
array An array of return values of the hook implementations. If modules return arrays from their implementations, those are merged into one array recursively. Note: integer keys in arrays will be lost, as the merge is done using array_merge_recursive().
Overrides ModuleHandlerInterface::invokeAll
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; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Extension!ModuleHandler.php/function/ModuleHandler::invokeAll/8.1.x