module_invoke_all
- Versions
- 4.6 – 7
module_invoke_all()
Invoke a hook in all enabled modules that implement it.
Parameters
$hook The name of the hook to invoke.
... Arguments to pass to the hook.
Return value
An array of return values of the hook implementations. If modules return arrays from their implementations, those are merged into one array.
Related topics
Code
includes/module.inc, line 475
<?php
function module_invoke_all() {
$args = func_get_args();
$hook = $args[0];
unset($args[0]);
$return = array();
foreach (module_implements($hook) as $module) {
$function = $module .'_'. $hook;
$result = call_user_func_array($function, $args);
if (isset($result) && is_array($result)) {
$return = array_merge_recursive($return, $result);
}
else if (isset($result)) {
$return[] = $result;
}
}
return $return;
}
?>Login or register to post comments 