tempnam

(PHP 4, PHP 5, PHP 7, PHP 8)

tempnam建立一個(gè)具有唯一文件名的文件

說(shuō)明

tempnam(string $dir, string $prefix): string

在指定目錄中建立一個(gè)具有唯一文件名的文件。如果該目錄不存在,tempnam() 會(huì)在系統(tǒng)臨時(shí)目錄中生成一個(gè)文件,并返回其文件名。

參數(shù)

dir

The directory where the temporary filename will be created.

prefix

產(chǎn)生臨時(shí)文件的前綴。

注意: Windows uses only the first three characters of prefix.

返回值

返回新的臨時(shí)文件名,出錯(cuò)返回 false。

更新日志

版本 說(shuō)明
4.0.6 在 PHP 4.0.6 之前,tempnam() 函數(shù)的行為取決于系統(tǒng)。在 Windows 下 TMP 環(huán)境變量會(huì)越過(guò) dir 參數(shù),在 Linux 下 TMPDIR 環(huán)境變量?jī)?yōu)先,而在 SVR4 下總是使用 dir 參數(shù),如果其指向的目錄存在的話。如果有疑問(wèn)請(qǐng)參考系統(tǒng)文檔中的 tempnam(3) 函數(shù)。
4.0.3 本函數(shù)的行為在 4.0.3 版中改變了。也會(huì)建立一個(gè)臨時(shí)文件以避免競(jìng)爭(zhēng)情形,即有可能會(huì)在產(chǎn)生出作為文件名的字符串與腳本真正建立該文件之間會(huì)在文件系統(tǒng)中存在同名文件。注意,如果不再需要該文件則要?jiǎng)h除此文件,不會(huì)自動(dòng)刪除的。

范例

示例 #1 tempnam() 例子

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

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

// do here something

unlink($tmpfname);
?>

注釋

注意: 如果 PHP 不能在指定的 dir 參數(shù)中創(chuàng)建文件,則退回到系統(tǒng)默認(rèn)值。 在 NTFS 文件系統(tǒng)中,同樣的情況也發(fā)生在 dir 中文件數(shù)超過(guò) 65534 個(gè)的時(shí)候。

參見(jiàn)