ひでメモ

プログラムについて勉強したことを書きます。たぶん。

【Laravel】ディレクトリを削除するメソッドにディレクトリを削除しないオプションがあった

Laravel にはディレクトリごと中身のファイルが削除できるdeleteDirectoryメソッドがあります。

ファイルストレージ 8.x Laravel

deleteDirectory メソッドを使用して、ディレクトリとそのすべてのファイルを削除できます。

ドキュメントにもこのように書いてますね。
が、deleteDirectoryの引数の中に、削除対象のディレクトリ以外に加えてもう一つ bool が渡せる$preserveという引数がありました。

以下はdeleteDirectoryの抜粋です。

        if (! $preserve) {
            @rmdir($directory);
        }

$preserveに true を渡すと指定したディレクトリを残してくれるようです。
ディレクトリは残したままファイルは全部削除したい、というシチュエーションは全然ありそうなので覚えておくと自前で書かなくて済みそうですね!

deleteDirectory(ディレクトリは削除しない) とは🤔