如何使用File Helper的delete_files函数删除文件

时间:2016-04-15 17:41:59

标签: codeigniter codeigniter-3

我想删除codeigniter中的文件。 我想使用delete_files函数,但它会返回false

    $this->load->helper("file");
    return delete_files(base_url().'application/cache/'.'blade-'.$cache_path);

为什么它返回false而不是删除文件。

3 个答案:

答案 0 :(得分:2)

只需使用:

    return unlink(APPPATH.'cache/'.'blade-'.$cache_path);

答案 1 :(得分:1)

使用

$this->load->helper('file');
return delete_files(FCPATH.'application/cache/'.'blade-'.$cache_path);

Codeigniter delete_files函数将删除目录中的文件,并返回true或false。

  

返回:成功时为TRUE,出现错误时为FALSE

你得到False意味着你有错误。

错误的可能原因

  • 文件夹不存在。
  • 文件夹路径无效
  • 没有适当的许可
  

文件必须是可写的或由系统拥有才能   删除。

对于您的案例base_url().'application/cache/'.'blade-'.$cache_path不是有效的文件夹路径。您在文件夹名称之前添加了base_url,这将使文件夹名称像URL一样。但它应该是文件夹路径。

使用FCPATH代替base_url

答案 2 :(得分:0)

您需要更改文件夹删除的路径,如

$this->load->helper('file');
return delete_files(APPPATH.'cache/'.'blade-'.$cache_path);

您不需要写入url,因为APPPATH将指针放在文件夹应用程序上,然后您只需指定要删除文件的子文件夹