2010-09-28 5 views
10

Ich verwende XAMPP unter Windows. Durch Drucken von $_FILES["file"]["tmp_name"] scheint die temporäre Datei unter C: \ xampp \ tmp \ phpABCD.tmp gespeichert worden zu sein. Aber ich kann es nicht auf dem Dateisystem des Servers sehen. Die Datei kann jedoch über move_uploaded_file(), rename() oder copy() verschoben oder kopiert werden. Wo speichert PHP temporäre Dateien während des Hochladens?Wo speichert PHP temporäre Dateien während des Hochladens?

Antwort

21

Es speichert es unter dem in $_FILES["file"]["tmp_name"] angegebenen Pfad, löscht es jedoch, nachdem das Skript ausgeführt wurde. Es liegt an Ihnen, die Datei an anderer Stelle zu verschieben, wenn Sie sie beibehalten möchten.

+4

Danke für "aber löscht es, nachdem das Skript ausgeführt wird." – user1032531

12

Es ist in upload_tmp_dir in Ihrer php.ini-Datei angegeben. Es wird vom System automatisch nach der Verwendung gelöscht.

1

php speichert alle temporären Dateien, einschließlich der hochgeladenen Dateien, im temporären Dateiverzeichnis wie in der php.ini angegeben. Beachten Sie, dass diese Dateien beim Hochladen möglicherweise entfernt werden, sobald das Skript, in das die Datei hochgeladen wurde, beendet wurde (wenn Sie also dieses Skript nicht verzögern, wird die hochgeladene Datei wahrscheinlich nicht angezeigt). Ein weiterer Grund könnte sein, dass die Datei einfach im Dateisystem versteckt ist.

Wenn Sie also die Datei sehen möchten, sollten Sie sicherstellen, dass Sie alle versteckten Dateien im Explorer sehen und das Skript so lange verschieben, bis Sie die Datei gefunden haben.

1

von http://www.php.net/manual/en/features.file-upload.php#93602,“... die hochgeladene Datei die Berechtigungen des Verzeichnisses, in der Richtlinie upload_tmp_dir von php.ini angegeben erben Wenn diese Richtlinie nicht festgelegt ist, die Standardeinstellung von C:. Wird \ Windows \ Temp verwendet .. so dass Sie es vielleicht mit file_puts_contents.“

4

können Sie überprüfen, wo pHP zur Zeit Ihre Temp

sys_get_temp_dir() 
0

Hinweis durch Drucken files $_FILES["file"]["tmp_name"] Speichern ist, dass die Datei binär in $_FILES["file"]["tmp_name"] gespeichert wird, öffnen kann, wenn es ein Bild ist, oder etwas wie das.

2

Verwenden Sie move_uploaded_file(file, path), geben Sie die Datei und den Pfad an, in dem die Datei gespeichert werden soll.

Eine Kopie dieser Datei wird erstellt und gespeichert.

Verwandte Themen