ログを保存するフォルダーができました。プログラムを使用して古いログ ファイルを削除するにはどうすればよいですか?神々には何か考えがあるのでしょうか?
foreach(glob('日志文件目录/*.*') as $fn) { if(filemtime($fn) < 指定的时间) unlike($fn);}
削除するスクリプトを作成し、1 日 1 回実行して期限切れのログ ファイルを確認できます (現在時刻と最終変更時刻または作成時刻を比較します)ログの)) を削除してください
スクリプトは次のようなものです、内容が 7 日以上変更されているファイルを削除します
find ./ -mtime +7 | xargs rm -rf
この作業を完了するには php を使用する必要があります。つまり、Baidu Kan を使用してフォルダー内のファイルを時間に従って並べ替えますが、両方を使用するのは不可能です。 。 。
これは私のコードです
function dir_size($dir,$url){
$dh = @opendir($dir) // ディレクトリを開き、ディレクトリ ストリームを返します
$return = array(); $ I = 0;
While ($ file = @Readdir ($ dh)) {// カタログ内のファイルを読み取ります
if ($ file! = '.' And $file! = '..') {
$ filesize [] =round((filesize($path)/1024),2);//ファイルサイズを取得します
$filename[] = $path;// H:i :s",filemtime($path)); // ファイルの最終変更日を取得します @closedir($dh); ディレクトリ ストリーム r をオフにする_multisort ($ filetime, sort_desc, sort_string, $ files); // ソートリターン $ RETURN; // ファイルを返します。 DIR_SIZE ("htdocs"), "htdocs") ;
? & Gt;
array_multisort() の実行後に問題が発生しました: 引数 #1 は配列またはソート フラグであることが期待されます
最良の結果は、 phpを実行すると、ファイルを時系列に並べることができるので、ファイルを選択して削除する機能を使用できます。 。 。
学びました。 。 。 。
array_multisort($filetime,SORT_DESC,SORT_STRING, $files);//時間順に並べ替えます
$files はどこに割り当てられますか?
array_multisort($filetime,SORT_DESC,SORT_STRING, $files);//時間順に並べ替えます
$files はどこに割り当てられますか?
関数の使用法を確認したところ、array_multisort 関数の使用方法がわかりました。指定された最後のパラメータは配列であるはずですが、4 番目のパラメータに値を割り当てる方法がわかりません。 $files はファイル内のすべてのファイルを参照する必要がありますが、使い方がわかりません。 。 $files=$return[] = $url.'/'.$file;?
$files を $return に変更しましたが、それでも動作しませんでした。 。 。
この関数は
function dir_size($dir,$url){ $dh = @opendir($dir); //打开目录,返回一个目录流 $return = array(); $i = 0; while($file = @readdir($dh)){ //循环读取目录下的文件 if($file!='.' and $file!='..'){ $path = $dir.'/'.$file; //设置目录,用于含有子目录的情况 if(is_dir($path)){ }elseif(is_file($path)){ $files[] = array( 'filename' => $path,//获取文件名称 'filesize' => round((filesize($path)/1024),2),//获取文件大小 'filetime' => date("Y-m-d H:i:s",filemtime($path)),//获取文件最近修改日期 'return' => $url.'/'.$file ); $filetime[] = filemtime($path);//获取文件最近修改日期 } } } @closedir($dh); //关闭目录流 array_multisort($filetime,SORT_DESC,SORT_STRING, $files);//按时间排序 return $files; //返回文件}