php - 如何获取临时文件路径?

标签 php temporary-files

我知道您可以使用 tmpfile 创建一个临时文件,然后写入它,并在不再需要时关闭它。但我遇到的问题是我需要文件的绝对路径,如下所示:

"/var/www/html/lolo/myfile.xml"

即使使用其他功能或技巧,我也能以某种方式获得路径吗?

编辑:

我希望能够从数据库中下载文件,但没有

$fh = fopen("/var/www/html/myfile.xml", 'w') or die("no no");
fwrite($fh, $fileData);
fclose($fh); 

因为如果我这样做,如果更多人尝试在完全相同的时间下载相同的文件,就有可能重叠。还是我错了?

编辑2:

也许我可以像这样生成唯一(uniqID)文件名,然后删除它们。或者如果有很多人在下载,这对服务器来说是否过于消耗?

最佳答案

有很多方法可以实现这一点,这里是一个

<?php 
// Create a temp file in the temporary 
// files directory using sys_get_temp_dir()
$temp_file = tempnam(sys_get_temp_dir(), 'MyFileName');
echo $temp_file;
?>

上面的例子会输出类似于: /var/tmp/MyFileNameX322.tmp

关于php - 如何获取临时文件路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12097631/

相关文章:

c# - 向 Firefox 发送纯文本

Ruby 写入内存中的文件(实际上不是写入文件)

javascript - PHP 到 Ajax Post 使用 JQuery,全局事件有效,但 POST 似乎从未正确设置

php - cURL 请求在服务器上工作正常但不会在我的本地主机上工作 :8080

java - 在 Android 中为我的应用抛出 IllegalStateException

ios - iPhone 存储在 tmp 目录中

ruby - 创建一个临时文件而不在 Ruby 中打开它

php - 使用 preg_replace_callback 对属性进行排序

php - 正确的方法?数据库实体的 PHP 对象

java - 如何重命名 mediarecorder 中使用的临时文件?