将上传的文件读入变量而不是保存

时间:2013-06-26 18:58:15

标签: php

我希望能够读取上传的文件,但由于安全问题,我不希望将文件保存在服务器上......是否可以直接将文件读入变量?

如果没有,Temp文件是如何工作的,在服务器上保存临时文件有多安全,什么时候删除?

2 个答案:

答案 0 :(得分:2)

您必须将上传保存到文件中,否则任何大文件都会导致错误,因为它会非常容易地使可用内存过载。

Temp是非常不安全的,通常系统上的任何人都可以读/写/删除你的临时文件。

解决此问题的最佳方法是进行正常的文件上传,并在提交脚本中读取文件并对其进行处理或将其移至更永久的位置。您现在可以向tmp副本发出删除命令。

由于您可能没有删除权限和/或文件可能被自动删除,因此最好以这种方式发出命令(@符号会抑制任何错误,因为您并不关心文件是否已被删除或什么不是,这是“以防万一”的情况)

@unlink($filename);

答案 1 :(得分:0)

据我所知,为了与它进行交互,它必须存储在某个地方,但是一旦脚本完成执行,它就会被删除。见PHP: When does the temporary uploaded files get deleted?