Вот допустим такая ситуация у меня есть грабо парсер он парсит файлы (Когда ктота скачивает файл на мам сайте) когда он заканчивает скачивоние остается файл
на хосте вот не магу придумать код который после определенного времени очишял папку где хронятся файлы
# jaras (01.07.2014 / 20:21)
Вот допустим такая ситуация у меня есть грабо парсер он парсит файлы (Когда ктота скачивает файл на мам сайте) когда он заканчивает скачивоние остается файл
на хосте вот не магу придумать код кот
Да мне бы тоже такую у меня тоже есть похожи грабо парс
А что мешает на тот же КРОН кинуть ?
jaras, Могу написать, но если выполнять без крона, то сайт будет подвисать периодически. Нужно будет выполнять скрипт вручную или поставить на крон. Последний вариант самый оптимальный.
Вот если комуто нужно нашол в гугле
<?php
function clear_old_files(){
$expire_time = 120; // Время через которое файл считается устаревшим (в сек.)
$dir = $_SERVER['DOCUMENT_ROOT']."/files/";
// проверяем, что $dir - каталог
if (is_dir($dir)) {
// открываем каталог
if ($dh = opendir($dir)) {
// читаем и выводим все элементы
// от первого до последнего
while (($file = readdir($dh)) !== false) {
// текущее время
$time_sec=time();
// время изменения файла
$time_file=filemtime($dir . $file);
// тепрь узнаем сколько прошло времени (в секундах)
$time=$time_sec-$time_file;
$unlink = $_SERVER['DOCUMENT_ROOT'].'/files/'.$file;
if (is_file($unlink)){
if ($time>$expire_time){
if (unlink($unlink)){
echo 'Файл удален';
}else {
echo 'Ошибка при удалении файла';
}
}
}
}
// закрываем каталог
closedir($dh);
}
}
}
function clear_old_pic(){
$expire_time = 120; // Время через которое файл считается устаревшим (в сек.)
$dir = $_SERVER['DOCUMENT_ROOT']."/screen/";
// проверяем, что $dir - каталог
if (is_dir($dir)) {
// открываем каталог
if ($dh = opendir($dir)) {
// читаем и выводим все элементы
// от первого до последнего
while (($file = readdir($dh)) !== false) {
// текущее время
$time_sec=time();
// время изменения файла
$time_file=filemtime($dir . $file);
// тепрь узнаем сколько прошло времени (в секундах)
$time=$time_sec-$time_file;
$unlink = $_SERVER['DOCUMENT_ROOT'].'/screen/'.$file;
if (is_file($unlink)){
if ($time>$expire_time){
if (unlink($unlink)){
echo 'Файл удален';
}else {
echo 'Ошибка при удалении файла';
}
}
}
}
// закрываем каталог
closedir($dh);
}
}
}
echo clear_old_files();
echo clear_old_pic();
?>