$line ) { if ( preg_match( '/^\[(\d{10})\]/', $line, $match ) ) { if ( $now - $max_days > $match[1] ) { // This line is too old, remove it: unset( $lines[$k] ); } } else { // Not a firewall log line: unset( $lines[$k] ); } } if ( empty( $lines ) ) { // No lines left, delete the file: unlink( $file ); } else { // Save the last preserved lines to the log: $fh = fopen( $file,'w' ); fwrite( $fh, "\n" ); foreach( $lines as $line ) { fwrite( $fh, $line ); } fclose( $fh ); } } } // ===================================================================== // EOF