php - Laravel File::delete kann Dateien nicht löschen
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-05-24 11:33:41
0
1
888

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));
    }
    
曾经蜡笔没有小新
曾经蜡笔没有小新

Antworte allen(1)
Ty80

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

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage