В Drupal 7 вы можете использовать module_exists (), чтобы проверить, включен ли модуль (а также существует ли он).
Например,
if (module_exists('devel')) {
Как вы можете проверить, включен ли модуль в Drupal 8?
В Drupal 7 вы можете использовать module_exists (), чтобы проверить, включен ли модуль (а также существует ли он).
Например,
if (module_exists('devel')) {
Как вы можете проверить, включен ли модуль в Drupal 8?
Так же, как упомянуть Клайва ....
Служба предпочтительнее использования \ Drupal (при условии, что это опция в текущем контексте)
Вот пример проверки, если модуль включен, но использует сервис.
$moduleHandler = \Drupal::service('module_handler');
if ($moduleHandler->moduleExists('devel')){
// Code Here
}
\Drupal::moduleHandler
в конце концов просто делает эквивалентный вызов, чтобы получить службу "module_handler" (см. документ moduleHandler ). Ключевым словом в комментарии Clives было внедрение , то есть передача сервиса конструктору.Как это:
источник
module_handler
службы предпочтительнее использования\Drupal
(при условии, что это опция в текущем контексте)