【问题标题】:delete directory in codeigniter在codeigniter中删除目录
【发布时间】:2013-07-15 13:17:05
【问题描述】:

我在 codeigniter 中做我的项目,因为我曾经创建新目录来上传我的图像。现在我需要删除我的新目录,因为我已经厌倦了这种编码,

 $dir = '/var/www/uploads/chat/'.$input['chat_id'];
   system('/bin/rm -rf ' . escapeshellarg($dir));

但它对我不起作用。我从这个链接http://stackoverflow.com/questions/1296681/php-simplest-way-to-delete-a-folder-including-its-contents得到了这个编码我需要做什么?

【问题讨论】:

  • 你为什么不试试unlink()?
  • 你能提供示例编码吗
  • 我可以知道我的编码有什么问题吗?
  • 检查编辑的答案..
  • CodeIgniter 有一个内置的帮助器来删除文件夹内的所有文件,检查File Helper 并使用delete_files('./path/to/directory/', TRUE); 删除所有文件,然后使用rmdir('./path/to/directory/') 删除目录。

标签: php codeigniter


【解决方案1】:

当你创建目录时,使用 777 作为权限

mkdir('new_dir', 0777, true);

然后试试下面的代码

if(rmdir('new_dir'))
{
    echo "deleted";die;   
}
else
{
    echo "not deleted";die;
}

我查了一下发现,如果你的文件夹没有权限,是不会被删除的。

请尝试让我知道状态。

【讨论】:

  • $this->load->helper("file"); delete_files(base_url().'/var/www/uploads/chat/1');
  • 遇到 PHP 错误

    严重性:警告

    消息:rmdir(uploads/chat/2): Permission denied

    文件名:models/chat_model.php

    行号:66

    我得到了这样的错误
  • 当你创建这个文件夹/子文件夹,即uploads/chat/2时,你是否设置了权限0777?因为我可以在模型中看到权限被拒绝。
  • 我给了这个权限
  • 好的,但是

    Message: rmdir(uploads/chat/2): Permission denied

    这行意味着您的文件夹没有正确的删除权限。
猜你喜欢
  • 1970-01-01
  • 2012-12-20
  • 1970-01-01
  • 2014-01-07
  • 1970-01-01
  • 2015-02-14
  • 2013-01-08
  • 2012-05-19
  • 2013-08-18
相关资源
最近更新 更多