在PHP我可以用touch()任意更改文件的最后修改和访问时间
<?PHP touch($filename,mktime(0,2010,1,10));
……但是如何改变创作时间?
我为什么需要这个?好吧,如果我将文件或目录mtime反转到创建日期之前,explorer.exe会不断向我显示更新的创建日期.
嗯,我发现的一种不令人满意但又有效的方法是:使用
nircmd.
Nircmd是一个37kb的实用程序. (可再发行,封闭源代码,免费软件)
Nircmd是一个37kb的实用程序. (可再发行,封闭源代码,免费软件)
如何进行:
<?PHP $time=strftime('%d-%m-%Y %H:%M:%S',$time); $cmd=".\\nircmdc.exe setfilefoldertime \"$filename\" \"$time\""; system($cmd);
笔记:
> nircmdc.exe是nircmd的命令行版本(注意.exe之前的附加c)
> setfilefoldertime是一个nircmd子命令,it is documented here.
不过,我希望这次我找不到COM或WMIC解决方案.