9

在php中,我可以任意更改文件的最后修改访问时间touch()

<?php
touch($filename,mktime(0,0,0,2010,1,10));

...但是如何更改创建时间

为什么我需要这个?好吧,如果我将文件或目录 mtime 追溯至其创建日期之前explorer.exe,则会继续向我显示最近的创建日期。

4

2 回答 2

2

Mh,我发现的一种令人不满意但有效的方法是:使用nircmd
Nircmd 是一个 37kb 的实用程序。(可再发行、闭源、免费软件)

如何进行:

<?php

$time=strftime('%d-%m-%Y %H:%M:%S',$time);
$cmd=".\\nircmdc.exe setfilefoldertime \"$filename\" \"$time\"";
system($cmd);

笔记:

  • nircmdc.exe是 nircmd 的命令行版本(注意c 前面的附加.exe
  • setfilefoldertime是一个 nircmd 子命令,在此处记录

不过,我希望这次我找不到 COM 或 WMIC 解决方案。

于 2012-06-22T01:56:59.410 回答
1

试试这个你可以更改文件创建时间和修改时间

Win32 控制台工具箱 1.1

exec('touch.exe /c /t "file.html" '. date('H:i:s'));

nircmdc -> 功能强大

于 2016-12-30T22:46:19.190 回答