我在写文档管理系统。要求的功能之一是用户能够使系统将某些文件复制到用户和php都可以访问的位置。从这里用户将能够直接编辑文件。需要发生的事情是编辑后的文件必须作为新版本自动保存到文档管理系统。我的问题是关于这最后一点。php:检查文件是否打开
我有一个页面,允许用户查看特定文件的所有版本。我在想,如果有人在任何人访问这个页面的时候会有什么好处,那么php会检查是否有一个关联的文件被编辑过,现在已经关闭,只需将它移动到正确的位置并给它版本信息。这可能吗?例如,如果用户使用MS Word编辑文件,php是否能够知道该文件是否正在使用?如果是,如何?
另一种方法是只抓取定期编辑的所有文件(例如在巫师时间),并且还有一个方便的“同步”按钮,用户可以通过点击来表示它们已完成。
这里是我尝试过的一些东西: flock:我认为它对于正在使用的文件返回false。错误 fstat:不会返回任何有用的,据我可以告知 取消链接:我想我可能会制作一个文件的副本,然后尝试取消链接原始(用户编辑的)。事实证明,取消链接作品是开放的东西
任何想法?
此外,它需要在Windows和Linux工作...
下面是一些澄清,对他们有什么需要:如果安德鲁是单击对应于Word文件的“编辑”按钮,然后单击Word文件会复制到某个位置。然后,安德鲁会用MS字编辑它,保存他的更改(可能不止一次)并关闭它。这就是我想要安德鲁做的。我希望我的代码来查看该文件被关闭,然后做的东西与它
要检查文件,PHP文件修改时间函数date(“Y-m-d。”,filemtime('filename.doc')) – Vaishu
修改时间是修改时间,而不是关闭时间。通常人们会因为他们关闭而保存,但我无法确定他们没有编辑就没有保存东西 – Sheena
您是否在'LOCK_EX'上使用'flock'? – Jon