Heim  >  Fragen und Antworten  >  Hauptteil

php - Laravel File::delete kann Dateien nicht löschen

Nachdem die Datei erfolgreich hochgeladen wurde, habe ich sie auf den lokalen Computer heruntergeladen, den Inhalt gelesen, eine Reihe von Datenbankoperationen durchgeführt und dann die Datei gelöscht, aber der Löschvorgang ist fehlgeschlagen. Und wenn Sie es beim nächsten Mal sofort löschen, ist der Löschvorgang erfolgreich.

     // \File::delete(storage_path(self::SAVE_FILE_NAME)); // 如果写在这里下次再进来删除文件则会成功
    // 下载文件到本地
    $success = $this->downloadUserFile($data['user_info']);
    if ($success) {
        $file = new \SplFileObject(storage_path(self::SAVE_FILE_NAME));
        $file->setFlags(\SplFileObject::READ_CSV);
        foreach($file as $index => $row) {
            list($mobile, $userName) = $row;
            // 数据库操作
        }
        // 处理完成后删除(无法成功)
         \File::delete(storage_path(self::SAVE_FILE_NAME));
    }
    
曾经蜡笔没有小新曾经蜡笔没有小新2706 Tage vor825

Antworte allen(1)Ich werde antworten

  • PHP中文网

    PHP中文网2017-05-24 11:35:41

    知道原因了,文件处理完后需先关闭才能删除成功!所以要在删除前设置$file=null

    Antwort
    0
  • StornierenAntwort