unlink(..):codeigniter中没有这样的文件或目录

时间:2018-05-23 08:37:17

标签: php codeigniter unlink

我正在使用codeigniter3。现在我想删除记录以及相关图像但删除了记录,但它不会从文件夹中删除图像。每条记录都有3张图片。

public function delete_by_id_and_img($id) {
  $image_file_name = $this->db->select('material_image')->get_where('tbl_raw_material', array('id' => $id))->row()->material_image;
        $cwd = getcwd(); // save the current working directory
        $image_file_path = $cwd."\\public\img\\";
        chdir($image_file_path);
        unlink($image_file_name);
        chdir($cwd); // Restore the previous working directory
        $this->db->where('id', $id);
        $this->db->delete('tbl_raw_material');
        return true;
    }

3 个答案:

答案 0 :(得分:0)

您可以使用以下内容:

$image_file_path='/project/folder/file_to_delete';
unlink($image_file_path);

您必须提供该文件的完整路径。

答案 1 :(得分:0)

我不确定你的语法在公开之前和你的img之后是否有两个\?

    $image_file_path = $cwd."\\public\img\\";

同时检查/这是否适合您,因为\我认为是针对Linux

答案 2 :(得分:0)

从文件夹中删除文件 - 拒绝访问文件,因此请更改用户,然后取消链接文件

chown($path, 666); //Insert an Invalid UserId to set to Nobody Owern; 
unlink($path);