Cyrax adlı üyeden alıntı: mesajı görüntüle
evet bu sefer oldu. eline sağlık ama benim atladığım birşey ortaya çıktı
boşaltma işlemi yapacağım klasör adı sitede biri işlem yaptığında sürekli değişiyor.
şöyle anlatayım,
"/abc" klasörü içinde "/def45787d5..." gibi klasörümüz var.
benim işlem yaptıracağım klasör "/def45787d5.." isimli klasör.
ama klasör adı söylediğim gibi sürekli değişiyor. "/def6875sd4" gibi.
php koduna klasör adını nasıl aldırabiliriz, değişse bile.
"/abc" klasörü içinde bulunan klasörlerde boşaltma işlemi yapması gerekiyor. tek klasör var zaten. işlev şöyle olmalı: "/abc" klasörü içindeki klasörlerin içindeki dosyaları zaman sırasına göre silecek.
çok zor mu bilmiyorum ama, olmazsa başka bir çare düşüneceğim
@ErsaT, çok teşekkür ederim.
Sürekli değişiyor dediğin klasör isimlerini neye göre verdiriyorsun yada oluşturduğun dosyaları neye göre oluşturuyorsun.
Dosyaları oluşturduğun yerde yaptığın kontrolün içerisine ekleyebilirsin.
if(...){
//klasör ve dosyayı oluştur
}elseif(time() - 21600 > filectime('resimler/'.$rastgeleolusanklasorismi."/".$rastgeleolusandosyaismiveuzantisi)){
unlink('resimler/'.$rastgeleolusanklasorismi."/".$rastgeleolusandosyaismiveuzantisi);
}
Yada şöyle olabilir, eğer resimler klasörünün içinde klasörler varsa ayrı işlem yapar yoksa ayrı işlem yapar. İç klasörlerin içindeki dosyaları kontrol edip siler.
Alıntı
resimler/
resimler/rastgeledosyaismi/
resimler/rastgeledosyaismi2/
<?php
$anadizin = "resimler";
if($kaynak = opendir($anadizin)){
	while (false !== ($file = readdir($kaynak))){
		if($file != "." and $file != ".." and $file != "index.html" and $file !=".htaccess" and $file != "Thumbs.db"){
			if(is_dir($anadizin.'/'.$file)){
				if($ickaynak = opendir($anadizin.'/'.$file)){
					while (false !== ($icfile = readdir($ickaynak))){
						if($icfile != "." and $icfile != ".." and $icfile != "index.html" and $icfile !=".htaccess" and $icfile != "Thumbs.db"){
							if(time() - 21600 > filectime($anadizin.'/'.$file.'/'.$icfile)) unlink($anadizin.'/'.$file.'/'.$icfile);
						}
					}
				}
			}else{
				if(time() - 21600 > filectime($anadizin.'/'.$file)) unlink($anadizin."/".$file);   
			}
		}
	}
}
?>