web-dev-qa-db-ja.com

drush evalを介してモジュールの.incファイル内の関数を呼び出すことは可能ですか?

Drush経由で実行する必要がある関数を含む追加(.inc)ファイルを含むモジュールがあります。私はそれを実行することが可能であることを知っていますdrush evalですが、これらの関数に対して実行しようとすると、次のエラーが発生します。

PHPの致命的なエラー:/usr/share/php/drush/commands/core/core.drush.inc(1037)の未定義の関数my_module_my_function()の呼び出し:1行目のeval()のコード

このコマンドは機能します(関数は.moduleファイルにあります)。

drush eval 'my_module_cron();'

このコマンドは機能しません(関数は.incファイルにあります)。

drush eval 'my_module_my_function();'

モジュール内で関数を移動する以外に回避策はありますか?

12

他の場所と同じように、評価コードに module_load_include() を追加できます。

このような:

drush eval "module_load_include('inc', 'my_module', 'INCLUDE_FILE_NAME_WITHOUT_EXTENSION'); my_module_my_function();"
18
rooby