モジュール内にあるファイルをいつ使用module_load_include()
または含める必要があるのか疑問に思いました。require_once
2 に答える
Drupalmodule_load_include()
関数が標準の PHP に加えて実行する重要な点はrequire_once
、ファイルの場所を特定するときに、drupal_get_path()
.
を使用する場合はrequire_once
、このビットを自分で行う必要があります。
これは、致命的なクラッシュを回避するのに役立ちますが、インクルードしようとした関数を呼び出そうとしたときに、とにかくファイルを取得する場合は無意味です。これは、より意味のあるエラーを生成できるようにするのに便利です。
結局のところ、module_load_include()
は Drupal が提供するちょっとしたユーティリティ関数で、自分自身の作業を少し楽にします。ファイルがどこにあり、そこに存在することがわかっている場合は、Drupal 機能を使用する必要はほとんどありません。を使用することもできますrequire_once
。
module_load_includeでは、Drupal を完全にロードする (完全にブートストラップする) 必要があります。
構文: module_load_include($type, $module, $name = NULL);
例えば: module_load_include('inc','module_name','file_name');
この関数をグローバル コンテキストで使用する場合は、 require_onceを使用します
require_onceは必要ありません。
例えば:require_once DRUPAL_ROOT . '/path/file' .