、私はhook_cronの基本的な実装がありますDrupal 6:hook_cronで、モジュールファイルへのパスを指定する方法は?私.moduleファイルで
function foobar_cron()
{
$file = fopen('my_file', 'a');
// stuff
fclose($file);
}
を問題は、この方法は、(http://www.example.com/)cron.phpによって呼び出されるということですので、パスmy_fileが正しくありません。 foobarモジュールディレクトリにあるmy_fileの正しいパスを指定する方法を教えてください。
これは、htdocsディレクトリに関連するパスのみを提供します。 – caxpeyr
umm、あなたのサーバがどのように設定されているかによっては、htdocsに比べて、_/sites/all/modules/foobar/myfile_ so yesのような文字列パスを返す必要があります。だからあなたはそれを修正して、手動で_ $ path = '/ var/wwww/htdocs'のようにすることができます。 drupal_get_path( 'module'、 'foobar')。 '/ my_file'; $ファイル= fopen($パス、 'a');それは動作するはずですか? –
それはそうですが、それはまさにあなたが望むものです。なぜなら、すべての要求がindex.php、cron.phpまたはupdate.phpを通過するので、Drupalの現在のディレクトリは常に最上位ディレクトリです。したがって、$ pathを直接使用するのは安全です。 Drupal自体も同じことをしています。 – Berdir