如何从控制器删除照片或查看使用CakePHP上传

问题描述 投票:0回答:2

我下面的教程cakephp-upload,一切工作搞好。但是,关于如何删除文件except for this, which doesn't really help me out.没有文档

我想,我要创建一个控制器功能这样做,但这是就我现在所拥有的。

我打算在具有与上传个人资料照片,以及删除按钮,从视图中删除来看。

是否有任何功能例如,你可以帮我找到?

编辑:一切正常......除了设置我的photo场为空!我已经检查了->allowEmpty('photo', 'create')->allowEmpty('photo', 'update')验证。我跑出来的想法,但我只是做了一个新问题,以保持对事物的顺序。非常感谢!

    if ($this->request->is(['patch', 'post', 'put'])) {
        $brigada = $this->Brigadas
                    ->findById($id)
                    ->firstOrFail();       
        $file = WWW_ROOT . 'files/Brigadas/photo' . $brigada->photo_dir . '/' . $brigada->photo;
        if(file_exists($file)) {
            unlink($file);
        }
        $brigada->dir = null;
        $brigada->photo = null;
        $this->Brigadas->save($brigada);
    }
cakephp cakephp-3.x
2个回答
1
投票

我认为你不需要的插件删除文件。只是检查文件是否存在,否则你会看到所有的错误,最后删除该文件。至于例如下面的代码(在你的控制器):

if(file_exists(<your_url_img>)) {
  unlink(<your_url_img>);
}

0
投票

您可以使用文件夹和File utilities

$file = new File(WWW_ROOT.'/img/'.$user->image);
$file->delete();
© www.soinside.com 2019 - 2024. All rights reserved.