Ich habe ein PHP-Skript, das eine Verknüpfung zu einer temporären Datei, die mit dem Skript erstellt wird, bietet. Ich möchte, dass die Person die Datei herunterladen kann, aber ich möchte nicht, dass die Datei lange auf dem Server verbleibt. Ich möchte die Datei vielleicht nach 2 Minuten entfernen. Wie kann das gemacht werden?Datei nach der Zeit in PHP entfernen
3
A
Antwort
8
Sie können es direkt nach dem Download entfernen. gib den Inhalt der Datei aus, dann schließe ihn und unlink
es.
bearbeiten: Beispiel
$fo = fopen($f, 'rb') ;
$content = fread($fo, filesize($f)) ;
fclose($fo) ;
}
// Stream the file to the client
header("Content-Type: application/octet-stream");
header("Content-Length: " . strlen($archive));
header("Content-Disposition: attachment; filename=\"myfile.exe\"");
echo $archive;
unlink($f);
2
einen Cron-Job einrichten, um Ihre Reinigungs Skript alle paar Minuten laufen. Sie können die Funktion filemtime() verwenden, um zu sehen, wann eine Datei erstellt wurde, und sie löschen, wenn die Datei als "alt genug" angesehen wird.
Verwandte Themen
- 1. Zeit in der Datumszeit entfernen?
- 2. Fehlende Datei nach dem Entfernen der Pods
- 3. Entfernen eines SKLabel nach einer gewissen Zeit
- 4. Daten in Datei nach Zeit anfügen
- 5. Drucken nach STDOUT in PHP CLI bricht nach einiger Zeit
- 6. Entfernen tmp-Datei nach der Rückkehr Httpresponse in django
- 7. alle Zeichen nach einer gewissen Zeit in SQL entfernen
- 8. Nicht nach der vorhandenen Datei suchen? PHP
- 9. Wie Zeit in DateTime entfernen
- 10. in Nim konstant entfernen nach der Kompilierung
- 11. entfernen 5 Stunden von der Zeit
- 12. Zeit in PHP subtrahieren
- 13. Länge in der Zeit eine Wave-Datei
- 14. PHP, wenn eine Zeit nach und vor der angegebenen Zeit ist
- 15. konvertieren Seife Zeit in PHP
- 16. PHP: Probleme bei der Suche nach Text in einer Datei
- 17. PHP-Array nach Wert im Array entfernen
- 18. Datei aus der Warteschlange entfernen?
- 19. Suche nach Verfügbarkeit nach Zeit
- 20. Entfernen Zeit von <pubDate> PHP RSS-Feed
- 21. git push nach dem Entfernen großer Datei
- 22. MATLAB - Zeit-Frequenz-Diagramm der .wav-Datei
- 23. am nächsten Zeit aktuelle Zeit PHP Get
- 24. Teil der Zeichenfolge nach "." Entfernen
- 25. Erkennung der Datei in PHP
- 26. CSS: Das Entfernen der Zeit in list-style-type: dezimal
- 27. Zeit in der Dropdown-Liste muss nach der Zeit in anderen Dropdown-Liste sein
- 28. Windows-Zeit in PHP bekommen
- 29. entfernen Wiederholung in php
- 30. Oracle 10g - Entfernen Zeit Komponente
Das klingt gut, aber wie kann ich den Inhalt der Datei ausgeben? Ich wollte sagen, dass die Datei, die heruntergeladen werden soll, tatsächlich eine ausführbare Datei (.exe) ist, die das Ergebnis einer C++ - Kompilierung war. Wie kann ich dem Benutzer einen exe-Datei-Download geben? – QAH
Senden Sie die entsprechende Header 'header ('Content-Type: application/octet-stream');' vor dem Schreiben in den Puffer. –
QAH, was StreetPPC sagt, ist kein Link zu der Datei. Stattdessen sollte das ursprüngliche Skript die Datei erstellen und sie mit dem obigen Code an den Benutzer ausgeben. Oder Sie können eine Verknüpfung zu einem Skript wie dem obigen erstellen, das die Datei ausgibt und entfernt. – bmb