Diferença entre .inc e .module?

23

Estou tentando descobrir qual é a principal diferença entre mymodule.modulee mymodule.admin.inc.

Alguém pode explicar isso?

saadlulu
fonte

Respostas:

20

Sem entrar em detalhes, o Drupal entende o arquivo .module como um módulo dentro do sistema. A notação .inc sempre foi usada no PHP para arquivos 'include'. Ao desenvolver módulos, você pode dividir a funcionalidade em diferentes arquivos .inc.

Os módulos usados ​​em casos específicos usam convenções semelhantes a .admin.inc. Esse arquivo normalmente inclui todo o código necessário para executar a interface administrativa, e um arquivo node.pages.inc, por exemplo, contém o código executado para outros retornos de chamada do menu.

Alex Gill
fonte
16

Adicionando à resposta dada por Alex Gill

  1. Os arquivos .module são carregados em todas as páginas de carregamento, enquanto os arquivos .inc são carregados apenas quando solicitados.
  2. Por convenção, os arquivos .module devem conter apenas as funções implementadas por ganchos. Seguir esse padrão também melhora o desempenho.
  3. Os arquivos .inc podem ser incluídos mencionando o caminho hook_menu()ou explicitando usando module_load_include ('inc', 'node', 'node.admin') .
  4. Se qualquer um dos arquivos .inc contiver objetos de classe, ele deverá ser mencionado no arquivo .info do módulo.
Gokul NK
fonte
8

Em resumo, mymodule.module é o arquivo php que o drupal carrega automaticamente quando esse módulo está ativado. Em seguida, ele pode incluir outros arquivos quando necessário. Normalmente, mymodule.admin.inc é incluído para criar seu menu de configurações de administrador. Se você pesquisar em mymodule.module, poderá ver onde. Às vezes, quando um módulo fica bastante complexo, ele é dividido em arquivos menores e também são incluídos.

Jimajamma
fonte
2
Existem outros arquivos que o Drupal carrega automaticamente, e esses não são arquivos com extensão .module. Na verdade, o Drupal carrega automaticamente também arquivos .inc; portanto, isso não pode ser usado para diferenciar arquivos .module e .inc.
kiamlaluno
0

Diferença entre arquivo de módulo e arquivo inc

  • O arquivo .module pode ser carregado pelo drupal para cada carregamento de página. A função no arquivo do módulo pode ser usada em outro arquivo de módulo sem incluir esse módulo (*, mas é necessário habilitar e a dependência precisa ser adicionada).
  • O arquivo .inc pode ser carregado manualmente. Ele precisa conter funções específicas da página.

Por exemplo hook_node_load, hook_form_alter precisa estar no arquivo .module.

Ramesh Babu TB
fonte
isso não distingue os dois arquivos, pois ambos são carregados automaticamente na ativação do módulo. quanto a .inc hook_node_load também pode ser chamado de um arquivo
.inc
O arquivo .inc pode ter sido incluído nesse arquivo de módulo relacionado e, para a separação da funcionalidade, pode ser feito pelo .inc para o usuário entender.
Ramesh Babu TB