【发布时间】:2011-06-25 01:37:50
【问题描述】:
我有一些 php 类和函数,我想让它在整个站点中可用,我应该把 include() 放在哪里? 我尝试了 hook_init() 但它一遍又一遍地包含在每个部分(页面,注释)中,即使我确实包含一次......
【问题讨论】:
我有一些 php 类和函数,我想让它在整个站点中可用,我应该把 include() 放在哪里? 我尝试了 hook_init() 但它一遍又一遍地包含在每个部分(页面,注释)中,即使我确实包含一次......
【问题讨论】:
Drupal 自动导入 my_module.module 文件中的所有函数。这是在 Drupal 站点中包含函数和类的最简单方法。由于这些都包含在 Drupal 的每个完整引导程序中,理想情况下,您将限制模块文件中的函数数量。但是,如果您希望它们始终包含在内,这是最简单的方法。
如果您需要更精细地控制何时包含代码,您可以使用函数module_load_include()。此功能经常用于加载管理页面的代码和其他范围有限的功能。
在少数情况下,您希望在每次页面加载时都加载库文件,在这些情况下,您可以在 mymodule_init() 挂钩中使用上述函数,并且文件应该只加载一次,因为该函数使用require_once(),而不是 include()。
【讨论】: