当我使用表单上传文件时,它会给我“名称”和“tmp_name”,您应该将文件从其临时位置移动以保留它。但是文件在被删除之前会在服务器上保留多长时间?它是永久存储在那里直到您手动清理文件夹,还是在它提交的 PHP 脚本完成运行后被删除?我的表单跨越多个页面,我只想在最后处理所有内容,而不是在表单的每一页完成后处理部分。上传是在第 3 步(共 5 步)中,所以我想知道是否保存了第 3 步中上传的文件信息,在第 5 步后表单完成时文件是否仍然存在。
问问题
2933 次
3 回答
9
除非 PHP 死于可怕的火焰般的死亡,或者您采取措施保存文件,否则当脚本退出时,它将被 PHP 自动杀死。如果您需要通过多阶段表单保存它,则必须将其移动到安全的地方,然后跟踪它(隐藏的表单字段、会话、数据库等......)并实施您自己的清理系统以处理废弃表单中的孤立文件。
于 2010-07-13T04:05:46.110 回答
7
一旦提交的 PHP 脚本完成运行,它就会被删除
因此,您可以将文件上传作为最后一步,也可以为未完成的表单实现自己的垃圾收集器。
于 2010-07-13T03:59:33.547 回答
1
这取决于 tmp 上传文件夹。如果是tmp
目录,你不能真的相信它可以活到第 5 步。如果你控制上传文件夹,那么你可以可靠地相信它可以活到第 5 步。你可以设置上传路径upload_tmp_dir
于 2010-07-13T04:01:38.050 回答