ホームページ  >  に質問  >  本文

1 か月以上経過したファイルを削除する yyyy-mm-dd.pdf

ファイル名に基づいて 1 か月以上古い PDF ファイルを削除したいと考えています。例えば、(今日 - 1か月)が「2022-06-01.pdf」だった場合、「2022-04-13.pdf」や「2021-01-22.pdf」などのファイルを削除したいとします。実際の変更日や作成日に基づいて選択基準を設けたくありません。

例 (一時的/)

リーリー

HTML

リーリー

JS

リーリー

PHP「test.php」

ああああ

P粉158473780P粉158473780260日前455

全員に返信(1)返信します

  • P粉147747637

    P粉1477476372024-02-26 19:51:10

    私ならこれを完全にサーバー側で行います。

    1. 「1 か月前」DateTime
    2. インスタンスを構築します
    3. このインスタンスからファイル名を作成します
    4. ファイルを反復処理して Basenames (ディレクトリ接頭辞を無視します)
    5. ファイル名に 「1 か月前」 より前の日付が含まれている場合は、削除してください
    $lastMonth = new DateTimeImmutable('-1 か月');
    $cutoff = sprintf('%s.pdf', $lastMonth->format('Y-m-d'));
    
    $glob = glob("temp/2???-??-??.pdf");
    
    foreach($glob as $file) {
        if (ベース名($file) < $cutoff) {
            unlink($file);
        }
    }
    

    返事
    0
  • キャンセル返事