PHP 文件系统 rmdir() 函数



PHP 文件系统rmdir()函数用于删除空目录,成功则返回true,失败则返回false。

该目录必须为空,并且相关的权限必须允许此操作。失败时可能会生成 E_WARNING 级别的错误。

语法

以下是PHP文件系统rmdir()函数的语法:

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

参数

以下是rmdir()函数的必选和可选参数:

序号 参数及描述
1

$dirname (必选)

要删除的目录的路径。

2

$context (可选)

上下文流资源。上下文是一组设置,可能会更改流的行为。

返回值

rmdir()函数成功返回 TRUE,失败返回 FALSE。

PHP 版本

rmdir()函数最早作为PHP 4核心部分引入,并能与PHP 5、PHP 7和PHP 8良好兼容。

示例

这是一个基本的示例,演示如何使用PHP文件系统rmdir()函数删除目录。

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

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

输出

以下是以下代码的结果:

Directory removed successfully!!!

示例

这是一个另一个示例,演示如何使用rmdir()函数处理目录不存在的错误。

<?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.";
   }
?> 

输出

这将产生以下结果:

Directory 'Myfolder' does not exist.

示例

这是一个使用rmdir()函数通过目录数组删除多个目录的示例。

<?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";
      }
   }
?> 

输出

这将生成以下输出:

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

示例

这是一个使用rmdir()函数删除嵌套目录的示例。

<?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.";
   }
?> 

输出

这将导致以下输出:

Directory 'subdir' within 'parentdir' removed successfully.

总结

rmdir()方法是一个内置函数,用于删除或移除给定的目录。在删除目录之前,请确保目录为空,并且应该具有执行此操作的特定权限。

php_function_reference.htm
广告