Я запускаю 2 простые функции:
<?php
$zipUrl = "path_of_original.zip"$zipFilename = "local_path_and_name_of.zip"$unzipPath = "destination_of_unzipped_files"
upload_archive ($zipUrl, $zipFilename);
unzip_archive ($zipFilename, $unzipPath);
?>
1-й, загрузите архив .zip на сервер
function upload_archive ($zipUrl, $zipFilename){
define('BUFSIZ', 4095);
$rfile = fopen($zipUrl, 'r');
$lfile = fopen($zipFilename, 'w');
while(!feof($rfile))
fwrite($lfile, fread($rfile, BUFSIZ), BUFSIZ);
fclose($rfile);
fclose($lfile);}
2-й, распаковать архив
function unzip_archive ($zipFilename, $unzipPath){
$zip = new ZipArchive;
$res = $zip->open($zipFilename);
if ($res === TRUE) {
$zip->extractTo($unzipPath);
$zip->close();
echo 'success!';
} else {
echo 'error!';
}
}
когда эти две функции выполняются отдельно, все нормально, но при последовательном выполнении я не могу оценить вывод второй функции (распаковать).
Я думаю, что проблема в том, что .zip-файл все еще заблокирован в записи первой функцией.
какие-либо предложения?
Angelo.
Задача ещё не решена.
Других решений пока нет …