Nachdem ich es getan habe:
$temp = tmpfile();
fwrite($temp, "writing to tempfile");
Ich möchte einen vollständigen Pfad zu erhalten $temp
Datei das tmpfile
hat erschaffen.
Was muss ich tun, um diese Informationen zu erhalten?
Farzher
Nachdem ich es getan habe:
$temp = tmpfile();
fwrite($temp, "writing to tempfile");
Ich möchte einen vollständigen Pfad zu erhalten $temp
Datei das tmpfile
hat erschaffen.
Was muss ich tun, um diese Informationen zu erhalten?
Bischof
tmpfile
gibt einen streamfähigen Dateizeiger zurück.
Um den entsprechenden Pfad zu erhalten, Fragen Sie den Stream nach seinen Metadaten:
$file = tmpfile();
$path = stream_get_meta_data($file)['uri']; // eg: /tmp/phpFx0513a
Der Vorteil der tmpfile
sich nähern? PHP entfernt automatisch die $path
Wenn $file
geht aus dem Rahmen. Mit tempnam
müssen Sie die erstellte Datei manuell entfernen.
Alix Axel
$path = tempnam(sys_get_temp_dir(), 'prefix');
Sehen dieses Beispiel.
Im Originalcode wird die Datei entfernt, wenn das Skript beendet/abstürzt. Dieser hinterlässt Müll. Die richtige Lösung finden Sie in der Antwort von @bishop.
– AndreKR
17. Juli 2016 um 9:10 Uhr
Der erste Parameter für Verzeichnis wird auf Windows-Plattformen nicht berücksichtigt. Welches immer C:\Windows\Temp\ verwendet.
– Tim
18. Januar 2018 um 14:40 Uhr