Heim  >  Artikel  >  Backend-Entwicklung  >  php先删除再重新创建某文件时文件的创建日期不更新的有关问题

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

WBOY
WBOYOriginal
2016-06-13 13:40:221058Durchsuche

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下是什么情况么?
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn