php zip dosyaları içinde yolu olmayan fermuarlar yaratıyor

0 Cevap php

Ben bir zip dosyası oluşturmak için php kullanmaya çalışıyorum (- bu sayfada alınan - öyle http://davidwalsh.name/create-zip-php), ancak zip dosyası içindeki dosyanın kendisi için klasör isimleri hepsi.

Sadece zip içindeki dosya eksi tüm klasörleri mümkün mü?

İşte benim kod:

function create_zip($files = array(), $destination = '', $overwrite = true) {

    if(file_exists($destination) && !$overwrite) { return false; };
    $valid_files = array();
    if(is_array($files)) {
        foreach($files as $file) { 
            if(file_exists($file)) { 
                $valid_files[] = $file;
            };
        };
    };
    if(count($valid_files)) { 
        $zip = new ZipArchive();
        if($zip->open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) { 
            return false;
        };
        foreach($valid_files as $file) { 
            $zip->addFile($file,$file);
        };
        $zip->close();
        return file_exists($destination);
    } else {
        return false;
    };

};


$files_to_zip = array('/media/138/file_01.jpg','/media/138/file_01.jpg','/media/138/file_01.jpg');

$result = create_zip($files_to_zip,'/...full_site_path.../downloads/138/138_files.zip');

0 Cevap