• Home
  • Hakkımda
  • LaydoProxy
  • LaydoUpload
  • Online Kim Var
Blue Orange Green Pink Purple

Zip Dosyalarını acma ve zipleme

Posted in Php. on Monday, June 18th, 2007 by admin
Jun 18

Zaman zaman web uygulamarında zip’li dosyalar oluşturmak veya zip’li dosyaları açmak gerekebiliyor. Örneğin tek seferde birden fazla resim dosyasının upload edilmesi gereken durumlarda zip dosyası kullanmak kullanıcıya büyük kolaylık sağlayabilir. Veyahut php ile bir word veya excel dökümanı olarak oluşturduğunuz uzun bir raporu kullanıya zip’lenmiş halde sunmak da yararlı olabilir. Buna benzer durumlarda php ile zip dosyaları oluşturmak veya zip dosyalarını açmak için taklalar atmaya gerek yok. İnternette çok güzel hazırlanmış sınıf (class)’lar var. dUnzip de bunlardan bir tanesi… Bakalım dUnzip ile bu iş ne kadar kolaymış.

dUnzip sınıfı

Brazilyalı bir programcı tarafından yazılmış olan bu sınıfı bu bağlantıdan bilgisayarınıza indirebilirsiniz. Bu sınıfın çalışabilmesini için php‘nin ZLib desteği olması gerekiyor. İyi haber şu: ZLib desteğin pek çok sunucuda zaten açık halde :) Fakat siz yine de Zlip desteğinin açık olup olmadığını phpinfo() öğrenebilirsiniz. Eğer bu destek açık değilse gerekli bilgiyi php.net/zlip sayfasından alabilirsiniz.

dUnzip sınıfı içerisinde 2 adet ana dosya bulunmaktadır. Bunlar dZip.inc.php ve dUnzip2.inc.php dosyalarıdır. Eğer zip’li dosya oluşturmak istiyorsanuz dZip.inc.php dosyasını, daha önceden oluşturulmuş bir zip’li dosyayı açmak istiyorsanız da dUnzip2.inc.php dosyasını php sayfanıza dahil etmeniz (include) gerekiyor. Şimdi basit bir örnek yapalım.

Zil’li dosya oluşturmak

Örneğin resim_1.png, resim_2.jpg ve resim_3.gif isminde üç adet resim dosyamız olsun. Bu resimlerin hepsini rezimler.zip isminde zip’li bir dosyaya dönüştürmemiz gerektiğinde şöyle bir kod kullanmanız yetecektir.

  1. <?php
  2.     include("dzip.inc.php");
  3.     $zip = new dZip("resimler.zip");
  4.         $zip->addFile("resim_1.png", "resim_1.png");
  5.         $zip->addFile("resim_2.jpg", "resim_2.jpg");
  6.         $zip->addFile("resim_3.gif", "baska_isimde_resim.gif");
  7.     $zip->save();
  8. ?>

 

Zip’li dosya oluşturduğumuz için 2. satırda dZip.inc.php dosyasını sayfaya dahil ettik. 3. satırda ise dUnzip sınıfını kullanıma hazırlıyoruz. Aynı zamanda sonuçta oluşacak olan Zip’li dosyanın ismini belirtiyoruz.

4, 5 ve 6 nolu satırlarda Zip’li dosyanın içerisine kaydedilecek dosyaları belirtiyoruz. addFile() fonksiyonuna ik tane parametre bildiriyoruz. İlk parametre sıkıştırmak istediğimiz dosyanın gerçek ismi iken, ikinci parametre ise Zip’li dosyanın içerisinde görünecek olan ismi. Ve bundan sonra 7. satırda dosyaların, Zip’li dosya içerisine kayıt edilmesini sağlıyoruz.

resimler.zip dosyasının içeriği
Oluşturduğumuz resimler.zip dosyasının içeriği

Zil’li dosyayı açma

Şimdi de biraz önce oluşturduğumuz rezimler.zip dosyasını nasıl açabiliriz, nasıl içerisindekileri çıkartabiliriz ona bakalım.

  1. <?php
  2.     include("dUnzip2.inc.php");
  3.     $zip = new dUnzip2("resimler.zip");
  4.     $zip->unzipAll("resimlerim");
  5. ?>

Zip’li bir dosyayı açacağımız için 2. satırda dUnzip2.inc.php dosyasını sayfaya dahil ettik. 3. satırda ise dUnzip sınıfını kullanıma hazırlıyoruz. Aynı zamanda çıkartmak istediğimiz Zip’li dosyanın ismini belirtiyoruz. 4. satırda ise Zip’li dosyanın içindekilerin hepsini resimlerim isimli bir klasör içerisine çıkartılmasını belirtiyoruz. Tek tek dosya çıkartmak isterseniz $zip->unzip("baska_isimde_resim.gif", "resim_3.gif"); şeklinde bir kod kullanabilirsiniz.

created  by EBURHAN

Leave a Reply

Laydo.net Webmaster Blog

  • Categories
    • .net c##
    • Actionscript
    • Ajax
    • araçlar
    • Attacking and Defense
    • CSS
    • Flash
    • flex
    • Grafik
    • html
    • Javascript
    • Joomla
    • Linux
    • LOST
    • MsSQL
    • muzik
    • Php
    • Programlarım
    • Sorun(HATA)
    • uçuk kaçık
    • Uncategorized
    • XBOX360
  • Recent Posts
    • Actionscript 3 Preloading
    • Server Değişikliği
    • Super Fıkra gibi oyku İspanyol ve Amerikalı
    • Zend Studio Yavaşlık problemi Zend studio too slow problem
    • Flash transparent Popup fixed sayfanın ortasında
  • Recent Comments
    • Merve on Dünya Telefon Ülke kodları Ülke Telefon kodları
    • Emre Kaya on Dünya Telefon Ülke kodları Ülke Telefon kodları
    • ekrem on Dünya Telefon Ülke kodları Ülke Telefon kodları
    • ekrem on Dünya Telefon Ülke kodları Ülke Telefon kodları
    • Mahir on Dünya Telefon Ülke kodları Ülke Telefon kodları
  • Etiket Bulutu

    ücretsiz proje yönetim ücretsiz proje yönetim siteleri 4.sezon 4.Sezon 11.Bölüm 11.bölüm Actionscript as2 banner bedava proje yönetim clicktag comindwork Flash flashbanner liquidplanner LOST Lost 4.Sezon 11.Bölüm Lost 4.Sezon 11.Bölüm altyazı Lost 4.Sezon 11.Bölüm full indir Lost 4.Sezon 11.Bölüm indir Lost 4.Sezon 11.Bölüm izle Lost 4.Sezon 11.Bölüm rapidshare Lost s04e011 altyazı Lost s04e11 Lost s04e11 full indir Lost s04e11 indir Lost s04e11 izle Lost s04e11 rapidshare Lost s04e11 türkçe altyazı officezilla online project manager online proje yönetim proj projectoffice proje onetim proje yönetim proje yönetimi proje yönetimi sitesi proje yönetimi sitesi karşılaştırma proje yönetim sistemleri s04e011 takip toggl web 2.0 web 2.0 proje web tabanlı proje yönetim uygulaması

    WP Cumulus Flash tag cloud by Roy Tanck requires Flash Player 9 or better.

  • .net c##
    • Bir makale Sitesi
    • C# platformu
    • Kaynak code Sitesi
  • linkage
    • 2402424.com
    • Bannerblo
    • ÇevirBak
    • DinoDream
    • ferruh mavituna
    • Harun Pekşen
    • İsmionemlimi.com
    • MSDN
    • Oğuzhan Çetinkaya
    • Turkce Lorem İpsum
    • Webgraf.Ru
    • WM-TR
    • www.eburhan.com
    • yeni mecra
    • zamazing


  • Home
  • Hakkımda
  • LaydoProxy
  • LaydoUpload
  • Online Kim Var

© Copyright Laydo.net Webmaster Blog. All rights reserved.
Designed by FTL Wordpress Themes brought to you by Smashing Magazine

Back to Top