2017-11-20 5 views
0

Ich habe ein PHP-Skript, um eine Zip-Datei aus einem Formular, zu entpacken, aber was auch immer Inhalt ich in die Zip einfügen, kann der geöffnete Zip die Elemente nicht finden. Als ich meine zip var_dump() ich dieses:ZipArchive in PHP7 kann Inhalt von zip nicht finden

object(ZipArchive)#800 (5) { 
    ["status"]=> int(0) ["statusSys"]=> int(0) 
    ["numFiles"]=> int(0) 
    ["filename"]=> string(14) "/tmp/php83KJHe" 
    ["comment"]=> string(0) "" 
} 

hier ist das Skript:

$zip  = new \ZipArchive(); 
$zipname  = $_FILES[ 'lezip' ][ 'tmp_name' ]; 
$zip->open($zipname, ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE); 
var_dump($zip); 
$zipsuccess = $zip->extractTo($destination); 
var_dump(' success: ' . $zipsuccess); 

der Erfolg Dump sagt, dass es in Ordnung ist

string(11) " success: 1" 

und ich habe die $ einrichten Zielordner, existiert und hat Schreibzugriff.

Warum kann ZipArchive keine Elemente zu den von mir hochgeladenen Reißverschlüssen finden?

+1

Debug: $ open_status = $ zip-> offen (...); var_dump ($ open_status); Teilen Sie die Ausgabe bitte. –

Antwort

1

Von PHP docs auf ZipArchive::OVERWRITE:

immer ein neues Archiv starten, wird dieser Modus die Datei überschreiben, wenn sie bereits vorhanden ist.

Sie können dieses Flag nicht verwenden, wenn Sie ein vorhandenes Archiv lesen möchten.

+0

toll, es funktioniert nur mit der Flagge CREATE, danke –

Verwandte Themen