【发布时间】:2012-04-15 09:59:55
【问题描述】:
有没有办法检查文件是否已经完全上传到服务器上?我的场景:用户通过 ftp 上传文件,而我的其他 PHP 任务正在 cronjob 中运行。现在我想检查文件是否已上传或用户是否仍在上传。这很重要,因为那时我知道我是否可以使用该文件或等到它上传。谢谢。
【问题讨论】:
-
你的 FTP 服务器是什么?
-
单独使用 php 实现这一点肯定没有简单的方法。如果事先不知道关于正在上传的文件的信息(例如哈希和),则在不分析 ftp 服务进程本身的情况下,无法确定文件传输是否完成或仍在进行中,或者是否可能被中断。您需要与 ftp 服务通信,看看它是否可以提供需求信息。
-
如何检查文件是否正在被进程使用?您可以为此使用LSOF。您新发现的文件应该在 FTP 服务器进程中“打开”,直到它完全上传。
-
所以没有可靠的方法来检查不完整的上传? :(
标签: php