-
Notifications
You must be signed in to change notification settings - Fork 3
/
cron.php
66 lines (59 loc) · 1.86 KB
/
cron.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
header('Content-type: text/html; charset=utf-8');
define('GUARD', true);
include 'inc/config.php';
try {
include 'inc/function_zipcompressfile.php';
for($i=1; $i<=sizeof($server); $i++)
{
$handle = @opendir($server[$i]['patch']);
if ($handle)
{
if(!file_exists('files/server_'.$i.'/')) mkdir('files/server_'.$i.'/', 0777);
$etime = 180; //проверка времени изменения файла-не закачивать текущую демку
while (false !== ($files = readdir($handle)))
if (preg_match("/(.*).dem/", $files) ) {
$stime=time();
$ftime = filemtime($server[$i]['patch'].$files);
$time=$stime-$ftime;
if ($time>$etime){
zipcompressfile($server[$i]['patch'], 'files/server_'.$i.'/', $files);
unlink($server[$i]['patch'].$files);
}
}
closedir($handle);
//echo 'Сервер #'.$i.' - '.$files.' демо.<br>';
} else {
throw new Exception('Папка "'.$server[$i]['patch'].'" не найдена');
}
for($n=1; $n<=sizeof($server); $n++)
{
$handle = @opendir('files/server_'.$n.'/');
if ($handle)
{
//время в секундах- 259200 - 3 дня- срок хранения демо. все, что старше- удаляется
$etime = 259200;
while (false !== ($files = readdir($handle)))
if (preg_match("/(.*).dem/", $files) )
{
$stime=time();
$ftime = filemtime('files/server_'.$n.'/'.$files);
$time=$stime-$ftime;
if ($time>$etime)
{
unlink('files/server_'.$n.'/'.$files);
}
}
closedir($handle);
}
}
echo 'Старые файлы удалены<br>';
}
} catch (Exception $e) {
$error = $e->getMessage();
$html = file_get_contents('template/error.tpl');
$html = str_replace('{title}', 'Ошибка', $html);
$html = str_replace('{error}', $error, $html);
echo $html;
}
?>