0

私はPHPの初心者のようなもので、インデックスページのサイド部分に含めることができるファイルに、最終更新の日付と、その下に他のページのリストを表示するスクリプトを作成しようとしています更新しました(更新順)。たとえば、最後に更新したのが火曜日で、ニュースとインデックス ページのみを編集した場合、次のようになります。

2013 年 8 月 6 日 - ホームページを更新しました。- ニュースの見出しが更新されました。

次に、その下に他の最新の更新が表示されます..次のように:

2013 年 8 月 6 日 - ホームページを更新しました。- ニュースの見出しが更新されました。

2013 年 8 月 5 日 - スタッフが更新されました。

2013 年 8 月 2 日 - ホームページを更新しました。- フォーラムが更新されました。- 参加ページを更新しました。

また、表示できる更新の数に制限を設定できるようにしたいと思います..何年も前にこのスクリプトを持っていた友人がいて、.txt ファイルと txt ファイルを CHMOD して書き込み権限を持っていたことを覚えています。 . 次に、それらは 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";
    }
      }
   ?>

しかし、同じ日に2つのファイルを更新しても、新しい日付が開始されるため、これは正しく機能しません...とにかく、誰かがこのスクリプトを作成する方法を知っているかどうか疑問に思っていましたか? 私はそれを手に入れることが切実に必要なので、どんな助けも素晴らしいでしょう..私はそれについてどうやって行くのか本当に確信が持てず、アイデアを求めて何年にもわたってあらゆる場所を探してきました.

4

1 に答える 1

0

filemtime() は Unix タイムスタンプを返すため、同じ日に 2 つの更新を行っても 2 つの異なるタイムスタンプになります。date() を使用してエコーするときに日付をフォーマットするのではなく、$date 変数に保存する前にフォーマットします。

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

次に、それを印刷すると:

echo date('F j, Y', strtotime($date)) . "<br />\n";
于 2013-08-13T00:04:35.420 に答える