Extrahieren von Daten aus einer Zip-Datei (PHP)
Frage
Ich habe ein Tutorial von einer Website Net Tuts die verwendet wird, eine Zip-Datei zu laden und die Daten aus der Datei in den Server zu extrahieren.
Kopieren und Einfügen des Code direkt aus der Web-Seite nicht funktioniert hat, ein Fehler auf halben Weg durch das Skript aufgetreten verarbeitet werden.
Fatal error: Cannot instantiate non-existent class: ziparchive in /www/website_here.co.uk/httpdocs/test/functions.php on line 6
Ist es möglich, dass diese mit der Version von PHP zu tun ist, ich verwende? Hier ist der Code es klemmt auf:
<?php
function openZip($file_to_open) {
global $target;
global $unique_folder;
$zip = new ZipArchive();
$x = $zip->open($file_to_open);
if ($x === true) {
$zip->extractTo($target . $unique_folder);
$zip->close();
unlink($file_to_open); #deletes the zip file. We no longer need it.
} else {
die("There was a problem. Please try again!");
}
}
?>
Zeile 6: $ zip = new ZipArchive ();
Ich bin mit PHP Version 4.3.9.
Lösung
Auf PHP 4 Sie müssen unbedingt PECL zip 1.1.0 (oder höher) installieren um Zugriff auf die ZipArchive
Klasse zu haben. Folgen Sie diese Anweisungen .
Wenn das nicht möglich ist, werden Sie die nicht-OO zip_open
, zip_read
usw. API verwenden.
Andere Tipps
Sie könnten PclZip verwenden auch:
include('pclzip.lib.php');
$zip = new PclZip($file_to_open);
if ($zip->extract(PCLZIP_OPT_PATH, $target . $unique_folder) == 0) {
die("There was a problem. Please try again!");
} else {
unlink($file_to_open);
}
include('pclzip.lib.php');
$zip = new PclZip($file_to_open);
if ($zip->extract(PCLZIP_OPT_PATH, $target . $un_f) == 0) {
close("close");
} else {
unlink($file_op);
}
i zustimmen PclZip verwenden und wenn Sie es nicht die Zeit haben, um die Verwendung Extrahieren von Daten codieren up u müssen auch Referenzbibliotheken
nutzen Sie müssen einen Verweis auf die Bibliothek, die die ZipArchive
Klasse mit
$zipn=$_REQUEST['zip'];
echo $zipn;
$zip = new ZipArchive;
echo $_SERVER['DOCUMENT_ROOT']."/";
if ($zip->open($zipn) === TRUE) {
$zip->extractTo($_SERVER['DOCUMENT_ROOT']."/");
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
---------- Susheel susheel1104@gmail.com