• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ファイルの更新日時でのソート)

ファイルの更新日時でのソート方法と原因、対処法について教えてください

このQ&Aのポイント
  • 指定したディレクトリにある最近更新したファイルをHTML上に表示させたいと思っています。
  • 以下のサイトのスクリプトを使用してディレクトリのファイルを更新日時でソートしましたが、うまくソートされません。
  • 自前定義関数sorterの動作仕組みと、ソートに問題がある場合の対処法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • karace
  • ベストアンサー率45% (9/20)
回答No.1

2箇所間違ってますね。 > $files[] = array($file, filectime("./$data/$file")); $files[] = array($file, filemtime("./$data/$file")); 6行目、filectimeではなく、filectimeです。 filectimeは作成日時です。 更新日時にしたければfilectimeを使用します。 > return ($a[1] < $b[1]) ? -1 : 1; return ($a[1] > $b[1]) ? -1 : 1; 21行目、比較演算子が逆です。 新しいもの(値が大きいもの)を上にもってきたいのであれば、>にします。

その他の回答 (1)

  • karace
  • ベストアンサー率45% (9/20)
回答No.2

※修正です。 ----- 6行目、filectimeではなく、filemtimeです。 filectimeは作成日時です。 更新日時にしたければfilemtimeを使用します。 -----

x_crimson
質問者

お礼

初心者ながらリファレンスを参照しfilectimeは変だなと思っていました。sorterの部分は未だに仕組みが分かりませんが,これから勉強したいと思います。助かりました。ありがとうございました!

関連するQ&A