ホームページ  >  記事  >  バックエンド開発  >  PHPで時間ごとにファイルを削除するにはどうすればよいですか?

PHPで時間ごとにファイルを削除するにはどうすればよいですか?

Guanhui
Guanhuiオリジナル
2020-06-15 16:45:153176ブラウズ

PHPで時間ごとにファイルを削除するにはどうすればよいですか?

#PHP で時間ごとにファイルを削除するにはどうすればよいですか?

最初に関数 "opendir()" を使用してフォルダー内のすべてのファイルを読み取り、次に関数 "is_dir()" を使用してフォルダーをフィルターで除外し、次に関数 "filemtime()" を使用します。ファイルの作成時刻を取得し、最後に作成時刻に従ってファイルを削除します。

コードサンプル

<?php
/*
 * 删除文件夹下$n分钟前创建的文件
 * @param $dir 要处理的目录,物理路径,结尾不加\
 * @param $n 过期时间,单位为分钟
 * @return void
 */
function del_file_by_ctime($dir,$n){
    if(is_dir($dir)){
        if($dh=opendir($dir)){
            while (false !== ($file = readdir($dh))){
                if($file!="." && $file!=".."){
                    $fullpath=$dir."/".$file;
                    if(!is_dir($fullpath)){ 
                        $filedate=filemtime($fullpath);
                        $minutes=round((time()-$filedate)/60);
                        if($minutes>$n) unlink($fullpath); //删除文件
                    }
                }
            }
        }
        closedir($dh);
    }
}


//下面是调用的代码
//删除1天前的文件
$dir = realpath(&#39;./Upload/export&#39;);
del_file_by_ctime($dir, 24*60);
?>

推奨チュートリアル: "PHP"

以上がPHPで時間ごとにファイルを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。