每24小时产生一个新的.txt文件

时间:2019-06-01 19:39:12

标签: php date datetime

我正在尝试使用php创建一个访客计数器,该计数器将每天创建yy-mm-dd.txt,并包含当天的访问者数量,并且在凌晨12点之后它将创建一个新的yy-mm-dd.txt文件。 例如,今天是2019-06-02,因此文本文件将为2019-06-02.txt,第二天将自动创建2019-06-03.txt文件。

这是我尝试过的方法,但是12 AM之后并没有创建新的2019-06-03.txt文件。它保留相同的2019-06-02.txt文件

<?php

    $date = date('Y-m-d');

    $fp = fopen('dates/'.$date.'.txt', "r");

       $count = fread($fp, 1024);

   fclose($fp);

       $count = $count + 1;

       $fp = fopen('dates/'.$date.'.txt', "w");

                 fwrite($fp, $count);

     fclose($fp);

 ?>

如何解决?

2 个答案:

答案 0 :(得分:1)

最好使用file_get_contents,然后使用file_put_contents

<?php
$count = 1;
$content = file_get_contents(date('Y-m-d').'txt');
if($content !== FALSE){
   $count+=1;
}
file_put_contents(date('Y-m-d').'txt', $count);
?>

答案 1 :(得分:0)

您的代码应该可以正常工作。我们还可以添加is_dirfile_exists检查,并且可以使用fopenfwritefclosefile_get_content / {{1} }(如果我们喜欢)。我们还可以添加file_put_content,例如:

default_timezone

然后,我们的代码类似于:

date_default_timezone_set("America/New_York");