9

我是codeigniter的新手,所以请原谅我,我正在尝试让codeigniter删除一个基本文件夹(我不知道正确的术语是什么,它是我放置上传文件的文件夹,它位于我的根目录中代码点火器项目)。由于我是 codeigniter 的新手,所以我不知道如何在 codeigniter api 中使用 File Helper 参考。我希望有人可以帮助我。

此外,我尝试创建的删除功能还需要删除其所有内容,无论是否为空,文件夹都会被删除。我猜,它会使用递归类型的删除...我不太确定。

4

4 回答 4

19

您可以使用delete_files功能删除所有文件

$path=$this->config->base_url().'dir_name';
$this->load->helper("file"); // load the helper
delete_files($path, true); // delete all files/folders

上面的代码将从给定路径中删除所有文件和文件夹,如果目录为空,则可以使用rmdir删除一个空目录,例如

rmdir($path);

该文件夹应允许相关权限,这意味着文件/文件夹必须是可写的或由系统拥有才能被删除。

于 2013-01-06T02:58:49.110 回答
0

您可以使用“delete_files”功能来做到这一点:

$path = "the path that has files those will be deleted";
$this->load->helper("file"); // load codeigniter file helper
delete_files($path, true , false, 1); //  second and the last parameters are required, second parameter should be true and the last parameter should be greater than 0
于 2017-12-06T08:06:27.757 回答
0
// Delete Directory
public function delete_directory($folderName)
{
      $this->load->helper('file'); // Load codeigniter file helper

      $dir_path  = 'uploads/'.$folderName;  // For check folder exists
      $del_path  = './uploads/'.$folderName.'/'; // For Delete folder

      if(is_dir($dir_path))
      {
           delete_files($del_path, true); // Delete files into the folder
           rmdir($del_path); // Delete the folder

           return true;
      }
      return false;
 }
于 2020-03-20T14:03:22.420 回答
0
$this->load->helper("file"); // load codeigniter file helper
delete_files('./path/to/directory/', TRUE); // Delete all files/folders in the dir

如果要删除空文件夹(dir),请在上面两行之后添加以下行

rmdir('./path/to/directory');
于 2020-07-29T08:02:27.013 回答