特定のディレクトリのファイル一覧を取得したいのですが、必要なのは最終更新日時でソートし、最新の30件のファイル名です。(ディレクトリのファイル件数は30件以上とは限りません)
exec()を使った外部コマンドでは最新の1件のファイル名は取得できたのですが、30件となると方法がわかりません。
今考え付くのは、
dir()コマンドで取得したファイル名から最終更新日時を取得し、ソートして30件取り出す
という方法です。
他にもっとスマートな方法で最新30件のファイル名を取得する方法はないでしょうか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
$dir = opendir('.');
$i=0;
while(($dt = readdir()) !== FALSE){
if(($dt!='.')&&($dt!='..')&&($dt!='index.php')&&((ereg("jpg",$dt))||(ereg("gif",$dt)))){
settype($dfile_size,"double");
$dfile_size = round(filesize("$dt")/1000,1);
if($dfile_size == 0) $dfile_size = 0.1;
$file_size = sprintf("%01.1f",$dfile_size)."KB";
$time = filemtime("$dt");
$rcd = ereg_replace(".jpg", "", $dt);
$p_data[$i]="$time,<a href=$dt>$rcd</a>";
$i++;
}
}
closedir($dir);
$j=1;
rsort($p_data);
foreach ($p_data as $tmp) {
$p_title = split("\,",$tmp);
print "$j/$i<br>$p_title[1]<hr>\n";
$j++;
}
解析&カスタマイズして使用して下さい。
回答ありがとうございます。
更新日時でソートしてファイル名を取得するというのは無理みたいですね・・・。
コーディングは参考にさせていただきたいと思います。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- UNIX・Linux Linuxについて質問です。 シェルスクリプト名をfind.shとして、以下の条件をすべて満たすファ 1 2023/02/03 03:50
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/07/01 12:54
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/02 11:48
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CFileDialogの最初のディレクト...
-
バッチを用いたフォルダの自動移動
-
Visual C++ 2005 Express Editi...
-
makefile でファイルをコピーす...
-
FTPコマンドでディレクトリごと...
-
Subversionのリポジトリの削除
-
コマンドプロンプトを指定のデ...
-
VB2008でFTPでのディ...
-
図に示す階層構造で,現在のデ...
-
Matlab 指定したディレクトリ...
-
変数のなかみを辿る方法(Python)
-
Subversionで、ファイルをリネ...
-
visualstudioでc#のdllができない
-
ファイル・ディレクトリ削除を...
-
fopenでファイルが開かない場合...
-
str ! = NULL
-
JAVA内で複数のファイルを削除...
-
execコマンドについて
-
filemtimeについて
-
MkDir関数
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FTPコマンドでディレクトリごと...
-
バッチを用いたフォルダの自動移動
-
CFileDialogの最初のディレクト...
-
現在位置より2つ上のディレク...
-
Subversionのリポジトリの削除
-
fopenでファイルが開かない場合...
-
makefile でファイルをコピーす...
-
VB.NET 最下位のディレクトリ名...
-
rmdirでフォルダが消せません
-
visualstudioでc#のdllができない
-
ファイルアップロードに関して...
-
絶対パス?絶対アドレス?意味...
-
MkDir関数
-
拡張子を隠すのは良い事なので...
-
Subversionで、ファイルをリネ...
-
powershell で書いたプログラム...
-
コマンドプロンプトを指定のデ...
-
ファイル選択ダイアログで選択...
-
aspのページが表示できません
-
JAVA内で複数のファイルを削除...
おすすめ情報