php刪除檔案失敗的原因:檔案在刪除時仍然被其他執行緒或進程佔用。解決方法:先手動釋放文件對象,避免因為被其他執行緒或程序佔用而導致刪除失敗;然後利用unlink()函數刪除文件即可。
原因分析:
檔案仍然被其他行程佔用。所以我們最好釋放下文件對象,避免因為被其他執行緒或進程佔用而導致刪除失敗。
(推薦教學:php圖文教學)
unlink() 函數刪除檔案。
如果成功,函數傳回 TRUE。如果失敗,則傳回 FALSE。
(影片教學推薦:php影片教學)
程式碼實作:
public function upload() { //获取上传文件 $file = $this->request->file('file'); if ($file) { // 移动文件到 uploads 目录下 $info = $file->rule('date')->move(ROOT_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']], '头像更新成功'); } } } }
以上是php刪除檔案為什麼會失敗的詳細內容。更多資訊請關注PHP中文網其他相關文章!