Call Now

WhatsApp

Go back
to top

Arrow Icon
Site Logo

Delete ALL Files and Subfolders from Folder in PHP

Shape Image Layout Star Icon Star Icon

Delete ALL Files and Subfolders from Folder in PHP

How to delete all files and sub-folders from a folder using php. Like deleting all files of a user without activity for long time, deleting files older than 3 months etc. Whatever the reason, doing such clean-up manually is a tedious task. You can accomplish it with the help of an automated php script. And we are going to explain how to delete directory and all files and sub directories from it with php.

PHP Predefined function to delete the files from the folder.

glob() and unlink() only two native php functions.

  • Function glob() returns an array of filenames/directories matching the given pattern.
  • Function unlink() deletes a given file.

Here is the simple php function I have written to delete all files from a directory. Next we loop through the files one by one and check if the item is a file and not a sub folder itself using is_file() function.

 foreach(glob($dir . '/*') as $file){
        // check if is a file and not sub-directory
        if(is_file($file)){
            // delete file
            unlink($file);
        }
    }

Delete Only Particular File Type from Folder:

Delete only Particular file type for Eg:pdf, Jpg. with the file extension name user can delete only particular file type from the folder. 

foreach(glob($dir . '/*.pdf') as $file){
        // check if is a file and not sub-directory
        if(is_file($file)){
            // delete file
            unlink($file);
        }
    }

Delete Files Older than X Days from Folder:

Deleteing old and unwanted files by setting CRON job user can delete the files older then 90days.

foreach(glob($dir . '/*') as $file){
        if(is_file($file)){
            // check if file older than 90 days
            if((time() - filemtime($file)) > (60 * 60 * 24 * 90))
                unlink($file);
        }
    }


Delete All Files and Sub Folders from a Folder in PHP:

Simply deleting a folder with rmdir() won't work. it'll throw exception if you plan to remove folder with files in it. So first you've got to delete files one by one from each sub folder plus the remainder of the files then delete folders by removing parent folder.

foreach(glob($dir . '/*') as $file) {
        if(is_dir($file))
            deleteAll($file);
        else
            unlink($file);
    }
    rmdir($dir);

Tags :

PHP delete all files in directory recursive

delete all images from folder in PHP

delete all files in a directory Laravel

unlink multiple files PHP
PHP find files in directory and subdirectories

CodeIgniter delete all files in directory

how to delete files in a folder using PHP

PHP script to delete files on server

Related Posts

Delete ALL Files and Subfolders from Folder in PHP, PHP script to delete files on server

Advantage of Offshore IT Services

Blazingcoders is a offshore Website Design and Web Development Company, India. W

Read More
Delete ALL Files and Subfolders from Folder in PHP, PHP script to delete files on server

How to Create PDF file from webpage Using PHP and mpdf

How to convert PHP file to PDF file? In this PHP article, I will adviser you on how to catechumen

Read More

Top 10 MVC Based Framework for Development

MVC is an architectural pattern which can be used to organize the logic within an application. Unsur

Read More