1

重複の可能性:
ファイル作成時間

ディレクトリ内のすべてのファイルと、その作成日を配列で取得したいと思います。

関数を見ましたscandirが、不要なディレクトリも返されます。filemtime($filename)また、関数がファイルの作成日を返すことができることもわかりました。まとめることができません。

4

3 に答える 3

14

PHP > 5 の最近では、提供されているクラスをこの種のものに使用する必要があります。この特定のタスクでは、たとえばFilesystemIteratorを使用する必要があります。

$iterator = new FilesystemIterator('D:/dev/');
foreach($iterator as $fileInfo){
    if($fileInfo->isFile()){
        $cTime = new DateTime();
        $cTime->setTimestamp($fileInfo->getCTime());
        echo $fileInfo->getFileName() . " file Created " . $cTime->format('Y-m-d h:i:s') .  "<br/>\n";
    }
    if($fileInfo->isDir()){
        $cTime = new DateTime();
        $cTime->setTimestamp($fileInfo->getMTime());
        echo $fileInfo->getFileName() . " dir Modified " . $cTime->format('Y-m-d h:i:s') . "<br/>\n";
    }
}

これは、必要なファイルまたはディレクトリに関するすべての情報を提供できるSplFileInfo$fileInfoのインスタンスです。

于 2013-01-17T12:34:16.527 に答える
3
if ($handle = opendir('/path/to/files')) {

    while (false !== ($file = readdir($handle))) { 
        echo filemtime($file)."&nbsp;&nbsp;".$file;
     }

    closedir($handle); 
}
于 2013-01-17T09:24:56.760 に答える
1

scandirを使用して、メインディレクトリのすべてのファイルとサブディレクトリを取得します

次に、phpのis_file関数を使用します。

特定の拡張ファイルにアクセスしたい場合は、phpのglob関数を使用してください

次に例を示します。

PHPでscandirを使用して画像のみを取得するにはどうすればよいですか?

これがお役に立てば幸いです。

于 2013-01-17T09:21:11.680 に答える