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

标签 php windows

在 php 中,我可以使用 touch() 任意更改文件 last modificationaccess time

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

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

我为什么需要这个?好吧,如果我将文件或目录的 mtime 回溯到它们的创建日期之前explorer.exe而是一直向我显示最近的创建日期。

最佳答案

嗯,我发现一个不令人满意但有效的方法是:使用 nircmd .
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 解决方案。

关于php - 使用 PHP 在 Windows 上更改文件创建日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11148262/

相关文章:

php - 数据库查询与 PHP require_once

php - 使用另一个 COUNT 更新 MySQL 表

php - 创建一个用户友好的消息mysql错误

php - 如何构建相互依赖的多sql插入查询?

php - 自动删除 MySQL 中的过期数据行

c# - 使用 JNA 在 Windows 资源管理器中获取选定的文件项

c# - 在 Windows Phone 8.1 上播放 GIF

java - Titanium Studio - Java 返回错误 13

windows - 如何在linux上应用windows SVN制作的diff?

java - 将 jar 文件添加到 NetBeans Maven 中的依赖项