PHP Dokumentation: Function tempnam
12. Januar 2010 von werner
tempnam
(PHP 4, PHP 5)
tempnam — Erzeugt eine Datei mit eindeutigem Dateinamen
Beschreibung
Erzeugt eine Datei mit einem eindeutigen Dateinamen in dem angegebenen Verzeichnis, wobei die Zugriffsberechtigungen auf 0600 gesetzt werden. Wenn das Verzeichnis nicht existiert, erstellt tempnam() eine Datei im temporären Verzeichnis des Systems und gibt diesen Namen zurück.
Parameter-Liste
- dir
Das Verzeichnis, in dem die temporäre Datei erstellt werden soll.
- prefix
Der Präfix des genererierten temporären Dateinamens.
Hinweis: Windows nutzt nur die ersten drei Zeichen des Präfixes.
Rückgabewerte
Gibt den neuen temporären Dateinamen zurück, oder im Fehlerfall FALSE
Changelog
| Version | Beschreibung |
|---|---|
| 4.0.6 | Vor PHP 4.0.6 war das Verhalten der tempnam()-Funktion systemabhängig. Unter Windows wird die TMP-Umgebungsvariable den dir-Parameter überschreiben, unter Linux hat die TMPDIR-Umgebungsvariable Vorrang, während SVR4 immer den dir-Parameter verwendet, sofern das angegebene Verzeichnis existiert. Genauere Informationen finden Sie in Ihrem Systemhandbuch zur tempnam(3)-Funktion. |
| 4.0.3 | Das Verhalten dieser Funktion hat sich in Version 4.0.3 geändert. Die temporäre Datei wird auch erstellt, um eine "race condition" zu vermeiden, falls die Datei zwischen dem Zeitpunkt, an dem der String erzeugt wurde, und dem Zeitpunkt, an dem das Skript die Datei erzeugt, im Dateisystem auftaucht. Beachten Sie, dass Sie die Datei löschen müssen, wenn Sie sie nicht mehr benötigen; dies geschieht nicht automatisch. |
Beispiele
Beispiel #1 tempnam()-Beispiel
<?php
$tmpfname = tempnam("/tmp", "FOO");$handle = fopen($tmpfname, "w");
fwrite($handle, "schreiben in Temporärdatei");
fclose($handle);// tue etwasunlink($tmpfname);
?>Anmerkungen
Hinweis: Wenn PHP die Datei nicht im angegebenen dir-Parameter erzeugen kann, fällt es auf den Systemstandardwert zurück. Unter NTFS geschieht dies auch, wenn dir mehr als 65534 Dateien enthält.
Siehe auch
- tmpfile() – Erstellt eine temporäre Datei
- sys_get_temp_dir() – Returns directory path used for temporary files
- unlink() – Löscht eine Datei