2016-03-18 13 views
0

Ich habe ein Skript, das große CSV-Dateien vom Server liest. Wie Sie sehen können, bevor ich den Upload initialisiere, benutze ich ignore_user_abort(true). Sollte ich mir Sorgen machen, das nach dem Upload zu beenden? Benutze ich das richtig? Gibt es einen besseren Weg, um dieses Problem anzugehen?So verwenden Sie ignore_user_abort()

if (isset($_POST['submit'])) { 

try { 
    $filePath = $_POST['filepath']; 
    $electionType = $_POST['electionType']; 
    $year = $_POST['year']; 
    $updateMethod = $_POST['updateMethod']; 
    ignore_user_abort(true); 
    $upload = new UploadController($filePath,$year,$electionType,$updateMethod); 
} 
catch (Exception $e) { 
    echo 'The fields arent setup properly <br>'; 
    echo $e->getMessage(); 
    exit; 
} 

} 

Antwort

0

Dies sollte ein Kommentar sein, aber es ist ein bisschen lang.

Erstens habe ich keine Ahnung was UploadController ist oder was es tut. Noch weiß ich, was Sie versuchen, erreichen durch die Verwendung von ignore_user_abort(). Weiter, die langsamste Sache, die ich würde erwarten ist der Upload-Prozess selbst, die bis zum Zeitpunkt Ihrer ignore_user_abort() ausgeführt haben wird abgeschlossen.

Sollte ich schließen diese Sorgen, nachdem der Upload

Das ist wirklich Niederlagen der Zweck der Verwendung ignore_user_abort() an erster Stelle beendet hat. Wenn Sie eine Aktion ausführen möchten, bei der die Verbindung verloren geht, bevor das Skript normal beendet wird, sollten Sie die Abfrage connection_aborted() durchführen.