2011-01-11 9 views
1

実際、私はディレクトリ= mkdirの作成方法を知っています。
しかし、私はそれをサーバに完全な絶対パスで渡す必要があり、hook_installで関連するパスを取得する方法はわかりません。
私はbase_path()を使ってみましたが、 '/'を返しました。Drupal 7のモジュールのhook_installからディレクトリを作成するにはどうすればよいですか?

私が求めているパスはサイト/デフォルト/ファイルです(ディレクトリ内の "ファイル"内にあります)。

ありがとうございました。

答えて

-1

mkdir('sites/default/files/yourdir')を試しましたか?もしそうなら、ディレクトリはどこにありますか?そうでない場合は、どうしてですか?

相対ディレクトリ名は、作業ディレクトリに基づいて解決されます。 Drupalの作業ディレクトリは通常、install.phpindex.phpが置かれているディレクトリです。

+1

あなたが言ったように私はmkdir( 'sites/default/files/mydir')を実行しました。ありがとう – Doron

+1

正しい答えは適切なAPIを使用しています – xger86x

+0

モジュールがデフォルトサイトで使用されていない場合、これは機能しません。 Drupal 7はマルチサイト対応であり、このソリューションはデフォルトサイトで作業することを想定しています。 –

9

適切なAPIを使用してください。

$directory = file_default_scheme() . '://yourdir'; 
file_prepare_directory($directory, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS);