使用PHP在Windows上更改文件创建日期

ZJR*_*ZJR 8 php windows

在PHP中我可以更改文件的最后修改访问时间随意用touch()

<?php
touch($filename,mktime(0,0,0,2010,1,10));
Run Code Online (Sandbox Code Playgroud)

......但是如何改变创作时间

我为什么需要这个?好吧,如果我创建日期之前将文件或目录mtime反向转发,请explorer.exe不断向我显示更新的创建日期.

ZJR*_*ZJR 2

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

如何进行:

<?php

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

笔记:

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

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