27 lines
		
	
	
		
			627 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			627 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
class LogMaintainer
 | 
						|
{
 | 
						|
	private function cleaningDir ($dir, $seconds) {
 | 
						|
		$todayFileName = date ("Y-m-d").'.log';
 | 
						|
		$logFiles = scandir ($dir);
 | 
						|
		foreach ($logFiles as $key => $file) {
 | 
						|
			if (in_array ($file,array (".", "..", ".gitkeep", $todayFileName)))
 | 
						|
			{
 | 
						|
				continue;
 | 
						|
			}
 | 
						|
			if (!is_dir($dir . $file)) {
 | 
						|
				if (strtotime(str_replace(".log", "", $file)) < (strtotime("now") - $seconds)) {
 | 
						|
					unlink ($dir . $file);
 | 
						|
				}
 | 
						|
			} else {
 | 
						|
				$this->cleaningDir ($dir . $file . "/", $seconds);
 | 
						|
			}
 | 
						|
		}
 | 
						|
	}
 | 
						|
 | 
						|
	public function purge ($days) {
 | 
						|
		$seconds = $days * 86400;
 | 
						|
		$this->cleaningDir ('../logs/', $seconds);
 | 
						|
	}
 | 
						|
}
 |