電子書籍の厳選無料作品が豊富!

よろしくお願いします。
指定したディレクトリにある,最近更新したファイルを,html上に表示させたく思い,検索していたら以下のサイトを見つけました。
http://www.project-nya.jp/modules/weblog/details …(2番目のスクリプトです)
dataをこちらの指定するディレクトリに書き換え実行してみたのですが,更新日時ではソートされていないようです。
原因が私の方にあるのか,スクリプトの方にあるのかは分かりせん。
自前定義関数sorterがどのように動く仕組みになっているのか,また誤りがあるとしたらどうすれば良いのか。
詳しい方おられましたら,御教示ください。

A 回答 (2件)

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行目、比較演算子が逆です。
新しいもの(値が大きいもの)を上にもってきたいのであれば、>にします。
    • good
    • 0

※修正です。


-----
6行目、filectimeではなく、filemtimeです。
filectimeは作成日時です。
更新日時にしたければfilemtimeを使用します。
-----
    • good
    • 0
この回答へのお礼

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

お礼日時:2009/03/11 17:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!