İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

PHP+Zip

SeVeRaL

0
İyinet Üyesi
Katılım
31 Ocak 2003
Mesajlar
336
Reaction score
1
Konum
İstanbul
Merhaba,
Bir konuda yardıma ihtiyacım var. Linux sunucu üzerinde php ile bir dizini zip'lemek istiyorum. Konuyla ilgili bilgisi olan var mı acaba?
Dosya değil; içinde farklı dosya ve klasörler olan bir klasörü ziplemek istiyorum.
Yardımcı olursanız sevinirim.
 
N

NRT

Misafir
PHP:
<?

# PHP4 versiyonu
# 16.satirda .gz yapilacak dosyalarin adresini verin(klasor olarak)
set_time_limit(0);

function dosyaGZ($dosya,$yeniDosya){
     # Dosya içeriğini oku
     $icerik =  file_get_contents($dosya);
     
     # Sıkıştır
     $oturum = gzopen($yeniDosya,"w9");
     gzwrite($oturum,$icerik);
     gzclose($oturum);
}

# Değişkenler #
$dh = opendir('C:\Program Files\xampp\htdocs\test3');
    while (false !== ($filename = readdir($dh))) {
    $dizi[] = $filename;
}


//$dizi = scandir('C:\Program Files\xampp\htdocs\test3');
$sayi = count($dizi) -1;
$dosyaAdi = 'gz.php';

# Her eleman icin sıkıştırma işlemini yap #
for ($i=2; $i<= $sayi; $i++) {
    if(!eregi("$dosyaAdi",$dizi[$i])) {
        dosyaGZ("$dizi[$i]","".$dizi[$i].".gz");
    echo "<li><b>$dizi[$i].gz</b> yaratildi.<br /> ";
    }
    }


?>
 
N

NRT

Misafir
php 5 için üsteki 4 için
PHP:
<?
/* yns.zaxaz.com */

set_time_limit(0);
function dosyaGZ($dosya,$yeniDosya){
     # Dosya içeriğini oku
     $icerik =  file_get_contents($dosya);

     # Sıkıştır
     $oturum = gzopen($yeniDosya,"w9");
     gzwrite($oturum,$icerik);
     gzclose($oturum);
}

# Değişkenler #
# scandir sadece PHP5'te mevcut , PHP4 alternatifleri icin phpmanual'a bakabilirsiniz.
$dizi = scandir('C:\Program Files\xampp\htdocs\test3');
$sayi = count($dizi) -1;
$dosyaAdi = 'gz.php';

# Her eleman icin sıkıştırma işlemini yap #
for ($i=2; $i<= $sayi; $i++) {
    if(!eregi("$dosyaAdi",$dizi[$i])) {
        dosyaGZ("$dizi[$i]","".$dizi[$i].".gz");
    echo "<li><b>$dizi[$i].gz</b> yaratildi.<br /> ";
    }
    }

?>
 

SeVeRaL

0
İyinet Üyesi
Katılım
31 Ocak 2003
Mesajlar
336
Reaction score
1
Konum
İstanbul
Teşekkürler,
Hala deneme fırsatım olmadı fakat sonucu buradan yazacağım..
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
şunu deneyin;

PHP:
$dosya="prefix";
$klasor="/home/user/public_html/resimler";
$tar="tar -zcvf ".$dosya.".tar.gz ".$klasor;
system($tar);
header("Location: ".$dosya.".tar.gz");
 

Hostmaster

0
İyinet Üyesi
Katılım
26 Ağustos 2006
Mesajlar
1,486
Reaction score
0
System fonksiyonunu sunucuda herkes kullanabiliyor mu?
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst