function InstallRequirementsInterface::getRequirements

Check installation requirements.

Classes implementing this must be in the Install/Requirements namespace. For example src/Install/Requirements/ModuleNameRequirements.php.

During the 'install' phase, modules can for example assert that library or server versions are available or sufficient. Note that the installation of a module can happen during installation of Drupal itself (by install.php) with an installation profile or later by hand. As a consequence, install-time requirements must be checked without access to the full Drupal API, because it is not available during install.php. If a requirement has a severity of REQUIREMENT_ERROR, install.php will abort or at least the module will not install. Other severity levels have no effect on the installation. Module dependencies do not belong to these installation requirements, but should be defined in the module's .info.yml file.

During installation, if you need to load a class from your module, you'll need to include the class file directly.

Return value

array An associative array where the keys are arbitrary but must be unique (it is suggested to use the module short name as a prefix) and the values are themselves associative arrays with the following elements:

  • title: The name of the requirement.
  • value: This should only be used for version numbers, do not set it if not applicable.
  • description: The description of the requirement/status.
  • severity: (optional) The requirement's result/severity level, one of:

    Defaults to REQUIREMENT_OK when installing.

3 methods override InstallRequirementsInterface::getRequirements()
ModuleInstallRequirements::getRequirements in core/modules/system/tests/modules/module_install_requirements/src/Install/Requirements/ModuleInstallRequirements.php
Check installation requirements.
ModuleInstallUnmetRequirementsRequirements::getRequirements in core/modules/system/tests/modules/module_install_unmet_requirements/src/Install/Requirements/ModuleInstallUnmetRequirementsRequirements.php
Check installation requirements.
ProfileInstallRequirementsRequirements::getRequirements in core/profiles/tests/profile_install_requirements/src/Install/Requirements/ProfileInstallRequirementsRequirements.php
Check installation requirements.

File

core/lib/Drupal/Core/Extension/InstallRequirementsInterface.php, line 47

Class

InstallRequirementsInterface
Provides method for checking requirements during install time.

Namespace

Drupal\Core\Extension

Code

public static function getRequirements() : array;

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.