Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP Filesystem rmdir() Function



The PHP Filesystem rmdir() function is used to remove an empty directory, and return true on success, or false on failure.

The directory must be empty, and relevant permissions must permit this. An E_WARNING level error can be generated on failure.

Syntax

Below is the syntax of the PHP Filesystem rmdir() function −

bool rmdir ( string $dirname [, resource $context ] )

Parameters

Below are the required and optional parameters of the rmdir() function −

Sr.No Parameter & Description
1

$dirname(Required)

It is the path to the directory to be removed.

2

$context(Optional)

It's a context stream resource. Context is a collection of settings that might change the behavior of a stream.

Return Value

The function rmdir() returns TRUE on success, and FALSE on failure.

PHP Version

The rmdir() function was first introduced as part of core PHP 4 and work well with the PHP 5, PHP 7 and PHP 8.

Example

Here is the basic example to see how the PHP Filesystem rmdir() function is used to remove a directory.

<?php
   if(!is_dir("/PhpProject/examples")) {
      mkdir("/PhpProject/examples");
   }

   rmdir("/PhpProject/examples");
   echo "Directory removed successfully!!!";
?>

Output

Here is the outcome of the following code −

Directory removed successfully!!!

Example

Here is the another example to show the usage of rmdir() function to handle the errors if the directory does not exists.

<?php
   $dir = "/PhpProject/Myfolder";

   if (is_dir($dir)) {
      if (rmdir($dir)) {
         echo "Directory 'Myfolder' removed successfully.";
      } else {
         echo "Error removing directory 'Myfolder'.";
      }
   } else {
      echo "Directory 'Myfolder' does not exist.";
   }
?> 

Output

This will produce the following result −

Directory 'Myfolder' does not exist.

Example

Here is one more example to remove multiple directories using an array of directories with the help of the rmdir() function.

<?php
   $dirs = ["Myfolder1", "Myfolder2", "Myfolder3"];

   foreach ($dirs as $dir) {
      if (is_dir($dir)) {
         if (rmdir($dir)) {
               echo "Directory '$dir' removed successfully.\n";
         } else {
               echo "Error removing directory '$dir'.\n";
         }
      } else {
         echo "Directory '$dir' does not exist.\n";
      }
   }
?> 

Output

This will generate the below output −

Directory '/PhpProjects/Myfolder1' removed successfully.
Directory '/PhpProjects/Myfolder2' removed successfully.
Directory '/PhpProjects/Myfolder3' does not exist.

Example

Here is one more example to use rmdir() function to remove the nested directory.

<?php
   // Mention nested directory here
   $dir = "/Myfolder1/Myfolder2";


   if (is_dir($dir)) {
      if (rmdir($dir)) {
         echo "Directory 'subdir' within 'parentdir' removed successfully.";
      } else {
         echo "Error removing directory 'subdir' within 'parentdir'. Ensure the directory is empty.";
      }
   } else {
      echo "Directory 'subdir' within 'parentdir' does not exist.";
   }
?> 

Output

This will lead to the following output −

Directory 'subdir' within 'parentdir' removed successfully.

Summary

The rmdir() method is a built-in function to used to remove or delete a given directory. Make sure the directory is empty before deleting it, and should have the specific permissions to perform this activity.

php_function_reference.htm
Advertisements