1. sorununu için klasör temizleme fonksiyonuna filemtime ekleyerek halledebiliriz. bu verdiğim kodu cpanelde cronjobs'a eklersen -mesela her saat başı çalışacak şekilde- her saat başı belirttiğim klasördeki ve o klasörün içindeki klasörlerdeki tüm dosyaların oluşturulma tarihlerini filemtime ile kontrol eder ve 4 günden (değiştirebilirsin bu kısmı) fazla olanları siler.
<?php
$klasor = $_SERVER['DOCUMENT_ROOT'].'/upload-dizini/'; // klasörün sonunda kesinlikle / olsun
function klasor_temizle($klasor) {
$ac = opendir($klasor);
for(;false !== ($dosya = readdir($ac));)
if($dosya != '.' and $dosya != '..') {
$dosya2 = $klasor.$dosya;
if(is_dir($dosya2)) {
klasor_temizle($dosya2);
rmdir($dosya2);
}
else {
$sure = 60*60*24*4; // 4 gün
if(time() - $sure > filemtime($dosya2)) {
unlink($dosya2);
}
}
}
closedir($ac);
}
klasor_temizle($klasor);
?>2. sorunu anlamadım açıkcası
Verdigin kodu denedim.Temizleme islemini yapiyor fakat klasorun icini tumuyle siliyor denedigim kadariyla.Ben mi yanlis denedim acaba

5 dakikadan eski dosyalari silmesini istemistim ben,bu toptan siliyor.Ben yanlis denedigimi dusunuyorum.Cron jobs olarak sunu tanimladim deneme amacli:
Minute Hour Day Month Weekday Command Actions
*/5 * * * * php -q /home/xxxxx/public_html/fs/autoclean.php
Deneme amacli php kodlarinida sole tanimladim $sure = 00*05*00*0;
Yanlisliklar varsa burda soyleyin.
Tesekkurler...