function module_invoke_all in Drupal 5
Same name and namespace in other branches
- 4 includes/module.inc \module_invoke_all()
- 6 includes/module.inc \module_invoke_all()
- 7 includes/module.inc \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
35 calls to module_invoke_all()
- comment_render in modules/
comment/ comment.module - Renders comment(s).
- drupal_cron_run in includes/
common.inc - Executes a cron run when called
- drupal_goto in includes/
common.inc - Send the user to a different Drupal page.
- drupal_page_footer in includes/
common.inc - Perform end-of-request tasks.
- drupal_retrieve_form in includes/
form.inc - Retrieves the structured array that defines a given form.
File
- includes/
module.inc, line 399 - API for loading and interacting with Drupal modules.
Code
function module_invoke_all() {
$args = func_get_args();
$hook = array_shift($args);
$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($return, $result);
}
else {
if (isset($result)) {
$return[] = $result;
}
}
}
return $return;
}