module_load_include($type, $module, $name = NULL)
Loads a module include file.
Examples:
// Load node.admin.inc from the node module. module_load_include('inc', 'node', 'node.admin'); // Load content_types.inc from the node module. module_load_include('inc', 'node', 'content_types');
Do not use this function to load an install file, use module_load_install() instead. Do not use this function in a global context since it requires Drupal to be fully bootstrapped, use require_once DRUPAL_ROOT . '/path/file' instead.
@todo The module_handler service has a loadInclude() method which performs this same task but only for enabled modules. Figure out a way to move this functionality entirely into the module_handler while keeping the ability to load the files of disabled modules.
$type: The include file's type (file extension).
$module: The module to which the include file belongs.
$name: (optional) The base file name (without the $type extension). If omitted, $module is used; i.e., resulting in "$module.$type" by default.
The name of the included file, if successful; FALSE otherwise.
function module_load_include($type, $module, $name = NULL) { if (!isset($name)) { $name = $module; } if (function_exists('drupal_get_path')) { $file = DRUPAL_ROOT . '/' . drupal_get_path('module', $module) . "/$name.$type"; if (is_file($file)) { require_once $file; return $file; } } return FALSE; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!includes!module.inc/function/module_load_include/8.1.x