ファイル システムがファイルの変更時間をミリ秒単位で保存していることは知っていますが、PHP を介してその情報にアクセスする方法がわかりません。を実行すると、次のようls --full-time
に表示されます。
-rw-r--r-- 1 nobody nobody 900 2012-06-29 14:08:37.047666435 -0700 file1
-rw-r--r-- 1 nobody nobody 900 2012-06-29 14:08:37.163667038 -0700 file2
ドットの後の数字はミリ秒だと思います。
したがって、次ls
のように、使用して変更時間で並べ替えることができることに気付きました。
$filelist = `ls -t`;
ls
ただし、ディレクトリには膨大な数のファイルがある場合があり、そのような状況ではかなり遅くなる可能性があることに気付きました。
代わりに、私は使用してきましたがfind
、変更時間で結果をソートするためのスイッチがありません。これが私が今やっていることの例です:
$filelist = `find $dir -type f -printf "%T@ %p\n" | sort -n | awk '{print $2}'`;
もちろん、これはミリ秒単位でソートされないため、同じ秒で作成されたファイルが間違った順序でリストされることがあります。