• 26-12-2010, 22:11:07
    #1
    Merhaba, aşağıdaki kod ile istenen dosyaya bakıp süresi dolduysa siliyorum.
    $filename=$_SERVER['REQUEST_URI'];
    $cachefile = "cache/".$filename;
    $cachetime= 24 * 60 * 60;
    if(time() - $cachetime > filemtime($cachefile))
    {
    unlink($cachefile);
    
    }
    klasördeki dosyaların eğer oluşturulma süresi 3 günü geçtiyse silebilen bir döngü yapabilir miyiz ?

    biraz daha açmak gerekirse
    kullanıcı site.com/bir-sayfa.html sayfasına girmek istediğinde önce dosya adını alıyorum var mı yok mu? sonra süresi dolmuş mu?...

    dosya adı olmadan klasör içindeki tüm dosyaların sürelerini kontrol edip dolanları silmek istiyorum.
  • 26-12-2010, 22:36:18
    #2
    $cachetime = 3 * 24 * 60 * 60;
    $cachetime değişkenini üstteki şekilde değiştirin.
  • 26-12-2010, 23:08:26
    #3
    tamam, matematiğim iyi değil ama o başa 3 koyup 3 günü belirtebileceğimin farkındayım . yukarıda anlaşılır bir biçimde derdimi anlattığımı düşünüyorum.
  • 26-12-2010, 23:12:44
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    <?php
    
    function clean_cachedir($dirname)
    {
    	$dh = opendir($dirname);
    	$cachetime = 3 * 24 * 60 * 60;
    	while ($file = readdir($dh))
    	{
    		if (time() - $cachetime > filemtime($file))
    			@unlink($dirname . '/' . $file);
    	}
    	closedir($dh);
    }
    
    clean_cachedir('cache');
    
    
    ?>
  • 26-12-2010, 23:19:22
    #5
    Özür dilerim. Ben sadece o an istek gönderilen sayfayı kontrol etmek istediğinizi düşünmüştüm.
  • 26-12-2010, 23:24:42
    #6
    Hkan adlı üyeden alıntı: mesajı görüntüle
    Özür dilerim. Ben sadece o an istek gönderilen sayfayı kontrol etmek istediğinizi düşünmüştüm.
    est. özür dilemenizi gerektirecek bir durum yok. sonuçta bana yardım etmek istediniz teşekkür ederim.

    grafitus sağolasın dostum