phpでディレクトリを再帰的に作成する
久々の技術ネタ。
例えばphpで以下のようなディレクトリを再帰的にディレクトリを作成したいときに
/test1/test2/test3
phpのmkdirを使うと…
<?php $path = "/test1/test2/test3" mkdir($path); ?>
だとエラーが吐いてしまう。
test1のディレクトリ作って、test2を作って・・・の繰り返し作業は面倒なんですよね。
再帰的にディレクトリを作成する方法がないかなぁとGoogle先生に聞いたところ、
mkdir関数の第3引数にTRUEを指定すると、
指定したパスで存在しないディレクトリがあった場合、全て作成してくれるんです!
デフォルトではFALSEとなっていたんですね。
<?php $path = "/test1/test2/test3" // mkdir("作成したいディレクトリのパス", 'ディレクトリのパーミッション', "再帰的にディレクトリ作成するかどうか"); mkdir($path, '0777', TRUE); ?>
とこんな感じにディレクトリを再帰的に作成してくれます。
わからないことがあれば、すぐに「Google」!
疑問に思うこと、なんでも「Google」 必ずと言っても良い程、教えてくれます!