php删除文件失败的原因:文件在删除时仍然被其他线程或进程占用。解决方法:首先手动释放文件对象,避免因为被其他线程或进程占用而导致删除失败;然后利用unlink)函数删除文件即可。
原因分析:
文件仍然被其他进程占用。所以我们最好释放下文件对象,避免因为被其他线程或进程占用而导致删除失败。
(推荐教程:php图文教程)
unlink) 函数删除文件。
如果成功,该函数返回 TRUE。如果失败,则返回 FALSE。
(视频教程推荐:php视频教程)
代码实现:
public function upload) { //获取上传文件 $file = $this->request->file'file'); if $file) { // 移动文件到 uploads 目录下 $info = $file->rule'date')->moveROOT_PATH . 'public' . DS . 'uploads'); if $info) {//文件上传到服务器成功->接下来上传到OSS $filePath = ROOT_PATH . 'public' . DS . 'uploads/' . $info->getSaveName); $oss = new Oss); $result = $oss->putObject$filePath); if $result) { //上传到OSS成功 unset$info);//解除图片的进程占用 @unlink$filePath); return success['avatar' => $result['fileSrc']], '头像更新成功'); } } } }