filemtime returns 文件修改前后相同的值
filemtime returns same value before and after modification of file
我正在尝试使用 fwrite 获取文件写入前后的最后修改时间。但是,出于某种原因,我得到了相同的值。
<?php
$i = filemtime('log.txt');
echo gmdate("h:i:s", $i);
echo "<br/>";
$e=fopen('log.txt', 'w');
fwrite($e, "well well well");
$j = filemtime('log.txt');
echo gmdate("h:i:s", $j);
?>
现在我在 运行 这个脚本前一分钟用文本编辑器修改 'log.txt'。所以我应该得到大约 40-60 秒的时差。如果有人能指出这里发生了什么,那将不胜感激。谢谢
filemtime states that results of this function are cached. Maybe you can try it with clearstatcache的文档:
<?php
$i = filemtime('log.txt');
echo gmdate("h:i:s", $i);
echo "<br/>";
$e=fopen('log.txt', 'w');
fwrite($e, "well well well");
clearstatcache();
$j = filemtime('log.txt');
echo gmdate("h:i:s", $j);
尝试在fwrite之后添加fclose:
<?php
$i = filemtime('log.txt');
echo gmdate("h:i:s", $i);
echo "<br/>";
$e=fopen('log.txt', 'w');
fwrite($e, "well well well");
fclose($e);
$j = filemtime('log.txt');
echo gmdate("h:i:s", $j);
?>
我正在尝试使用 fwrite 获取文件写入前后的最后修改时间。但是,出于某种原因,我得到了相同的值。
<?php
$i = filemtime('log.txt');
echo gmdate("h:i:s", $i);
echo "<br/>";
$e=fopen('log.txt', 'w');
fwrite($e, "well well well");
$j = filemtime('log.txt');
echo gmdate("h:i:s", $j);
?>
现在我在 运行 这个脚本前一分钟用文本编辑器修改 'log.txt'。所以我应该得到大约 40-60 秒的时差。如果有人能指出这里发生了什么,那将不胜感激。谢谢
filemtime states that results of this function are cached. Maybe you can try it with clearstatcache的文档:
<?php
$i = filemtime('log.txt');
echo gmdate("h:i:s", $i);
echo "<br/>";
$e=fopen('log.txt', 'w');
fwrite($e, "well well well");
clearstatcache();
$j = filemtime('log.txt');
echo gmdate("h:i:s", $j);
尝试在fwrite之后添加fclose:
<?php
$i = filemtime('log.txt');
echo gmdate("h:i:s", $i);
echo "<br/>";
$e=fopen('log.txt', 'w');
fwrite($e, "well well well");
fclose($e);
$j = filemtime('log.txt');
echo gmdate("h:i:s", $j);
?>