# Temporäre Dateien in PHP



## Schrödi (28. Mai 2009)

Hallo zusammen,

ich habe ein Script erstellt, das mir aus einer Datenbank eine PDF Datei erstellt, die dann per Mail versendet wird. 
Die Datei wird nach dem versenden auf dem Server nur solange benötigt, bis der User die Seite verlässt. 
Ich habe mir gedacht, dass ich die Datei in das TEMP Verzeichnis ($_SEVER['TEMP'], bei meinem IIS C:\TEMP) speichere und mich somit nicht mehr um das Löschen bemühen muss. 
Kann ich so vorgehen, oder Müll ich dann den Server zu?
Wird das TEMP Verzeichnis regelmäßig geleert, oder hat es eine feste Größe (nach dem Prinzip First in - First out)?

Gruß Schrodi


----------



## Arne Buchwald (28. Mai 2009)

Hallo Schrodi,

was spricht denn dagegen, die Datei aus PHP heraus direkt nach dem Versand wieder löschen zu lassen? Damit hättest du auf jeden Fall Gewissheit, dass keine Karteileichen auf dem Server entstehen.

Viele Grüße, Arne


----------



## Schrödi (28. Mai 2009)

Einerseits möchte ich zusätzlich die Datei während der Session zum Download bereithalten, andererseits wollte ich die Idee weiterentwickeln.

Ich muss teilweise sehr große Datenbankabfragen und Auswertungen machen. Zeitspannen in Arbeitstagen berechnen, etc.. Die Berechnungen dauern ihre Zeit (die max. Scriptlaufzeit von 120 sec. reicht hier nicht aus). Deshalb speichere ich die Daten in einer Textdatei zwischen, um diese im Endeffekt auszugeben, in diverse Formate umzuwandeln und dem User zur Vefügung zu stellen.

Alles in der Session zwischenzuspeichern dauert länger, als immer diese Textdatei zu erweitern (Bei 30000 Zeilen ein enormer Zeitunterschied). 

Diese Textdateien lösche ich bisher täglich. Das möchte ich mir ersparen, indem ich diese Dateien in das TEMP Verzeichnis speichere. Und jetzt sind wir wieder bei meiner Frage. 

Cronjobs bzw. geplante Tasks werden nicht unterstützt bzw. ich habe keine Berechtigungen hierfür.


----------



## Schrödi (3. Juni 2009)

Weiß niemand, ob ich den TEMP Ordner nutzen kann?


----------

