If you ever needed a simple solution in Laravel to delete an entire directory and its contents the File facade has the answer.
deleteDirectory()
will delete everything, both files and folders down the tree from the path specified.
deleteDirectory($directoryPath, $preserve = false);
In this example:
use Illuminate\Support\Facades\File; File::deleteDirectory(storage_path('app/private'));
Everything in storage/app/private will be deleted and the now empty private folder will also be deleted.
You can prevent this parent folder deletion by passing in a second parameter (preserve) as true:
File::deleteDirectory(storage_path('app/private'), true);
deleteDirectory()
returns a bool as a result of its execution.
This method is very handing in development for use with ‘seeding’ to clean up old storage folders and files to start fresh.
Always be aware of the path you pass in as deleting entire directories can be devastating.
A drained and empty Kennington reservoir images from a drone in early July 2024. The…
Merrimu Reservoir from drone. Click images to view larger.
Using FTP and PHP to get an array of file details such as size and…
Creating and using Laravel form requests to create cleaner code, separation and reusability for your…
Improving the default Laravel login and register views in such a simple manner but making…
Laravel validation for checking if a field value exists in the database. The validation rule…