PHP更新脚本.文件时间


PHP Update script.. filemtime?

我是PHP的初学者,正在尝试制作一个脚本,在一个文件中显示上次更新的日期,并在该文件下面显示我更新的其他页面的列表(按更新顺序)。举个例子,如果我上一次更新是在周二,我只编辑了我的新闻和索引页面,它会说

2013年8月6日-主页已更新。-新闻标题更新。

然后在下面会显示其他最新更新。。像这样:

2013年8月6日-主页已更新。-新闻标题更新。

2013年8月5日-员工更新。

2013年8月2日-主页已更新。-论坛更新。-已更新加入页面。

我还希望能够设置显示更新数量的限制。。我有一个朋友几年前就有了这个脚本,我记得他是通过一个.txt文件和CHMOD这个txt文件来获得写权限的。然后是updates.php,在我想生成更新状态的每一页上,我都会在文件顶部包含几行脚本。。另外,我会列出页面名称和我希望它在txt文件或更新文件中显示的内容,如index.php>主页更新。。。然而,我已经失去了与他的联系,他们没有办法找到我。我尝试了一下,得到了:

  <?php
  $pages = array(
  'Main Page' => 'index3.php',
  'Staff' => 'staff.php',
  'News Headlines' => 'news.php',
  );
$list = array();
 foreach($pages as $page => $file) {
  $date = filemtime($file);    
 if(!isset($list[$date])) { $list[$date] = array(); }
  array_push($list[$date], $page);
  }
 krsort($list);
 foreach($list as $date => $pages) {
  echo date('F j, Y', $date) . "<br />'n";
   foreach($pages as $page) {
    echo "- $page Updated<br />'n";
    }
      }
   ?>

但这并不能正常工作,因为它开始了一个新的日期,即使我在同一天更新了两个文件。。。不管怎样,我只是想知道是否有人知道如何制作这个剧本?我急需得到它,所以任何帮助都会很好。。我真的不确定该怎么做,多年来我到处寻找想法。。。谢谢大家,我希望能收到回复:)

filemtime()将返回Unix时间戳,因此同一天的两次更新仍然是两个不同的时间戳。与其在回显日期时只使用date()来格式化日期,不如在将其保存到$date变量之前对其进行格式化:

foreach($pages as $page => $file) {
  $date = date('Y/m/d', filemtime($file));

然后当你打印出来时:

echo date('F j, Y', strtotime($date)) . "<br />'n";