ufaclub PHP: exec("find /dir/ '*.html' -delete"); или так: PHP: function mass($dir) { $dir = realpath($dir); $dirs = opendir($dir); while ($one = readdir($dirs)) { if ($one=='.' || $one=='..') continue; if (is_dir($dir.'/'.$one)) mass($dir.'/'.$one); if (strpos($one,'.htm')!==false) unlink($dir.'/'.$one); } } mass($dir);
спасибо, а это сильно будет грузить сервер если будет при каждом запросе на сайт выполняться? можно ли сделать такое условие что только например раз в час? например если серверное время 12.00 то проверяем и удаляем - если 13.00 то запускаем и удаляем.? а ваще лучше, если не сложно, подскажите как подсчитать количество html файлов в директории сайта но тоже по расписанию если не сложно
PHP: <?php function dirsize( $d ) { $dh = opendir( $d ); while( ( $f = readdir( $dh ) ) !== false ) { if ( $f != "." && $f != ".." ) { $path = $d . "/" . $f; if( is_dir( $path ) ) { $count += dirsize( $path , $count ); } elseif( is_file( $path ) ) { $count++; } } } closedir($dh); return $count; } $count = 0; print dirsize("./" , 0); ?> вот как можно сделать чтоб скрипт выполнялся в теле index.php например при таком услови что раз 3 часа тоесть кто то зашел на сайт .. а скрипт как раз три часа не запускался и опа выполнился и просчтал количество файлов... можно конечно через крон но тут над в дистрибутив включить кмски
Если раз в три часа, то можно при каждой загрузке index.php (к примеру) смотреть время и проверять время создания html-файлов, если текущее время на три часа больше, чем время их создания, то удалять. Как нагрузка будет - не знаю.
Также можно элементарно записывать в текстовой файл дату последней очистки , а потом сравнивать . И если прошло 3 часа тогда заного сносим все файлы и обновляем дату в текстовом файле ...
>можно конечно через крон но тут над в дистрибутив включить кмски Каким же образом Cron завязан на CMS?