In Drupal 7, puoi usare module_exists () per verificare se un modulo è abilitato (e se esiste).
Per esempio,
if (module_exists('devel')) {
Come puoi verificare se un modulo è abilitato in Drupal 8?
In Drupal 7, puoi usare module_exists () per verificare se un modulo è abilitato (e se esiste).
Per esempio,
if (module_exists('devel')) {
Come puoi verificare se un modulo è abilitato in Drupal 8?
Risposte:
Proprio come menziona Clive ....
il servizio sarebbe preferibile all'uso di \ Drupal (supponendo che sia un'opzione nel contesto corrente)
Ecco un esempio di controllo se un modulo è abilitato ma utilizzando un servizio.
$moduleHandler = \Drupal::service('module_handler');
if ($moduleHandler->moduleExists('devel')){
// Code Here
}
Come questo:
if (\Drupal::moduleHandler()->moduleExists('devel')) {
module_handler
servizio sarebbe preferibile all'uso \Drupal
(supponendo che sia un'opzione nel contesto attuale)
\Drupal::moduleHandler
finisce solo per effettuare una chiamata equivalente per ottenere comunque il servizio "module_handler" (consultare il documento moduleHandler ). La parola chiave nel commento di Clives era l' iniezione , ovvero passare il servizio a un costruttore.