(PHP 4, PHP 5, PHP 7, PHP 8)
tempnam — 建立一个具有唯一文件名的文件
$dir
, string $prefix
) : string在指定目录中建立一个具有唯一文件名的文件。如果该目录不存在,tempnam() 会在系统临时目录中生成一个文件,并返回其文件名。
dir
The directory where the temporary filename will be created.
prefix
产生临时文件的前缀。
注意: Windows uses only the first three characters of prefix.
返回新的临时文件名,出错返回 false
。
版本 | 说明 |
---|---|
4.0.6 |
在 PHP 4.0.6 之前,tempnam()
函数的行为取决于系统。在 Windows 下 TMP
环境变量会越过 dir
参数,在 Linux 下 TMPDIR
环境变量优先,而在 SVR4 下总是使用 dir
参数,如果其指向的目录存在的话。如果有疑问请参考系统文档中的
tempnam(3) 函数。
|
4.0.3 | 本函数的行为在 4.0.3 版中改变了。也会建立一个临时文件以避免竞争情形,即有可能会在产生出作为文件名的字符串与脚本真正建立该文件之间会在文件系统中存在同名文件。注意,如果不再需要该文件则要删除此文件,不会自动删除的。 |
示例 #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
参数中创建文件,则退回到系统默认值。 在 NTFS 文件系统中,同样的情况也发生在dir
中文件数超过 65534 个的时候。