tempnam

Create file with unique file name

&reftitle.description; `string` `tempnam` `string` `dir` `string` `prefix`

Creates a file with a unique filename, with access permission set to 0600, in the specified directory. If the directory does not exist, `tempnam` may generate a file in the system's temporary directory, and return the name of that.

&reftitle.parameters;

`dir`

- The directory where the temporary filename will be created.

`prefix`

- The prefix of the generated temporary filename.

  Windows uses only the first three characters of prefix.

&reftitle.returnvalues;

Returns the new temporary filename, or &false; on failure.

&reftitle.changelog;

&Version; | &Description;
4.0.6 | Prior to PHP 4.0.6, the behaviour of the `tempnam` function was system dependent. On Windows the `TMP` environment variable will override the `dir` parameter, on Linux the `TMPDIR` environment variable has precedence, while SVR4 will always use your `dir` parameter if the directory it points to exists. Consult your system documentation on the tempnam(3) function if in doubt.
4.0.3 | This function's behavior changed in 4.0.3. The temporary file is also created to avoid a race condition where the file might appear in the filesystem between the time the string was generated and before the script gets around to creating the file. Note, that you need to remove the file in case you need it no more, it is not done automatically.

&reftitle.examples;

### `tempnam` example

    <?php
    $tmpfname = tempnam("/tmp", "FOO");

    $handle = fopen($tmpfname, "w");
    fwrite($handle, "writing to tempfile");
    fclose($handle);

    // do here something

    unlink($tmpfname);
    ?>

&reftitle.notes;

If PHP cannot create a file in the specified `dir` parameter, it falls back on the system default. On NTFS this also happens if the specified `dir` contains more than 65534 files.

&reftitle.seealso;

- `tmpfile`
- `sys_get_temp_dir`
- `unlink`