Asağıdaki fonksiyon ile bir dizindeki dosyaları silebilirsiniz.
Fonksiyon ihtiyacınıza göre farklı şekillerde çalışabilir.
Bir dizini alt dizinleriyle birlikte silebilirsiniz, dosya silerken
‘regular expression’ kullanıp dosya adına göre silme işlemi yapabilirsiniz,
dizinin sadece içeriğini silebilirsiniz. Aşağıda gerekli bilgileri ve kullanım
örneklerini PHPDoc şeklinde türkçe olarak yazdım.
/**
* bir dizin/klasör icindeki dosyalari siler.
* kullanim sekli:
* dizinSil(string $dizin [, bool $dizininKendisiniSil=true
* [, bool $altDizinleriSil=true
* [, string $regEx='/.* /']]]);
*
* kullanim ornekleri:
* dizinSil('/home/gudubeth/resimler');
* //dizin icindeki dosyalari, alt dizinleri ve dizinin kendisi siler
* dizinSil('/home/gudubeth/resimler', false);
* //sadece dizinin icerigini siler. alt dizinler silinir
* dizinSil('/home/gudubeth/resimler', false, false);
* //sadece dizinin icerigini siler. alt dizinler SİLİNMEZ
* dizinSil('/home/gudubeth/resimler', false, true, '/.*\.jpg/');
* //dizin ve altdizinlerdeki jpg uzantili dosyalari siler.
*
* @param str $dizin
* dizinin yeri. ornek: /home/guest/temp
* veya c:/appserv/www/tmp
* @param bool $dizininKendisiniSil
* eger 'true' ise dizinin kendisini siler.
* degil ise sadece dizin icerigi silinir.
* varsayilan deger: 'true'
* @param bool $altDizinleriSil
* 'true' ise yinelemeli (rekursif) calisip
* alt dizinleri de siler.
* varsayilan deger: 'true'
* @param str $regEx
* sadece $regEx ile secilen dosyalari siler.
* regEx fonksiyonu olarak preg_match kullanilir.
* varsayilan deger: '/.* /' (yani tum dosyalari sil).
* ornek degerler:
* mp3 uzantili dosyalari sil: '/.*\.mp3/'
* adi a ile baslayan dosyalari sil: '/a.* /'
* adinda 'tmp' gecen dosylari sil: '/.*tmp.* /'
*
* @return bool eger denenen her dosya silindiyse veya silinecek bir
* dosya bulunamadiysa 'true' degerini dondurur.
* Dosya silme islemlerinden herhnagi birisi hatali ise
* 'false' dondurur.
* */
function dizinSil($dizin, $dizininKendisiniSil=true, $altDizinleriSil=true, $regEx="/.*/") {
if(!$dh = @opendir($dizin)) return false;
$sonuc=true;
while (($dosya=readdir($dh))!==false) {
if($dosya!='.' && $dosya!='..'){
if(is_dir( $dizin.'/'.$dosya) && $altDizinleriSil)
$sonuc = dizinSil($dizin.'/'.$dosya, true, true, $regEx) && $sonuc;
else if(preg_match($regEx, $dosya))
$sonuc = @unlink($dizin.'/'.$dosya) && $sonuc;
}
}
closedir($dh);
if($dizininKendisiniSil) $sonuc = @rmdir($dizin) && $sonuc;
return $sonuc;
}
PHP'de '... gün önce' Şeklinde Bağıl Tarih Yazma
27 Nisan 2010
Youtube yorumlarında olduğu gibi, tarihleri '2 gün önce', '4 ay önce' gibi aradan geçen zaman şeklinde yazan fonksyion.
Sitenize javascript ile kısayollar ekleyin
25 Nisan 2010
Websiteniz için klavye kısayolları yaratmaya yarayan javascript kütüphanesi. Herhangi bir kütüphaneye (JQuery, Mootools, vs) bağlı olmadan çalışabiliyor olması en büyük artılarından.
PHP'de Tarih ve Saat Farkı Hesaplama
16 Ocak 2010
String ya da unix timestamp olarak gelen iki tarih arasındaki farkı içinde saniye, dakika, gun, ay, vs, gibi detayları barındıran bir dizi şekilde döndüren fonksyion.
PHP ile dizin silme fonksiyonu
12 Ocak 2010
Bir dizin ve içindeki dosyaları silmeyi sağlayan fonksiyon. Gerektiğinde 'regular expressions' kullanarak isme göre silme işlemi yapabilirsiniz.
PHP ile Türkçe Tarih Gösterimi-Çevrimi
30 Aralık 2009
Tarihleri Türkçe olarak yazan fonksiyon. Altyapısında PHP'nin 'date' fonksiyonu kullanılıyor. Bu sayede bu fonksiyonda kullandığınız parametreleri aynen kullanabiliyorsunuz.
UTF-8 metinlerdeki aksanları kaldırma
12 Aralık 2009
İngiliz alfabesinde bulunmayan aksanlı harfleri (ç, ğ, ş), bu alfabeye uygun aksansız harflere (c, g, s) çevirmek için gerekli kod.