首頁  >  文章  >  後端開發  >  php先删除再重新创建某文件时文件的创建日期不更新的有关问题

php先删除再重新创建某文件时文件的创建日期不更新的有关问题

WBOY
WBOY原創
2016-06-13 13:40:221054瀏覽

php先删除再重新创建某文件时文件的创建日期不更新的问题
代码如下:

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
var_dump(unlink("update1.log"));  //true
$handle=fopen("update1.log","w"); //创建文件
fwrite($handle,date("Y-m-d H:i:s"));
fclose($handle);



预期结果为update1.log的创建时间能变更为fopen()创建文件时的时间。

实际结果是:update1.log的创建时间一直是第一次创建时的时间,就仿佛没有unlink()过一样。

百思不得其解~

求各位大虾谁能帮忙解惑一下~

PS:我的操作系统是win7

------解决方案--------------------
楼上几位有点想当然了

事实的确与楼主观察到得一样,至少在 window 系统中是这样的

不过这与 php 没有关系,是文件系统的原因
估计是当删除文件时并未清除目录项(只做了删除标志),当再次创建时又使用了原先的目录项
可以认为“文件创建时间”应该是目录项的创建时间

php 有取得该时间的函数 filectime


------解决方案--------------------
探讨

楼上说的有道理,有谁知道linux下是什么情况么?
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn