You are here

public function ModuleHandler::invokeAllDeprecated in Drupal 9

Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Extension/ModuleHandler.php \Drupal\Core\Extension\ModuleHandler::invokeAllDeprecated()

Invokes a deprecated hook in all enabled modules that implement it.

Invoking a deprecated hook adds the behavior of triggering an E_USER_DEPRECATED error if any implementations are found.

API maintainers should use this method instead of invokeAll() when their hook is deprecated. This method does not detect when a hook is deprecated.

Parameters

string $description: Helpful text describing what to do instead of implementing this hook.

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 recursively. Note: integer keys in arrays will be lost, as the merge is done using Drupal\Component\Utility\NestedArray::mergeDeepArray().

Overrides ModuleHandlerInterface::invokeAllDeprecated

See also

\Drupal\Core\Extension\ModuleHandlerInterface::invokeAll()

https://www.drupal.org/core/deprecation#how-hook

File

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

Class

ModuleHandler
Class that manages modules in a Drupal installation.

Namespace

Drupal\Core\Extension

Code

public function invokeAllDeprecated($description, $hook, array $args = []) {
  $result = $this
    ->invokeAll($hook, $args);
  $this
    ->triggerDeprecationError($description, $hook);
  return $result;
}