Я пытаюсь проверить функцию ZipArchive в своем приложении, и по какой-то причине я ничего не получаю.
Смотрите мой vardump
object(ZipArchive)#1 (5) { ["status"]=> int(0) ["statusSys"]=> int(0)
["numFiles"]=> int(0) ["filename"]=> string(31)
"E:\xampp\htdocs\test\zipfile.zip" ["comment"]=> string(0) "" }
Мой PHP
$zip = new ZipArchive();
$zip->open('zipfile.zip', ZipArchive::CREATE);
if($zip === TRUE){
} else {
var_dump($zip);
}
При проверке адресата я не получаю никакого zip файла, я также проверил, активировано ли расширение, и я могу подтвердить его.
Для меня оказалось, что все в порядке, но файл не был создан, пока я не добавил некоторый контент.
<?php
$zf=__DIR__ . '\zipfile.zip';
/* To create a simple zip archive */
$zip = new ZipArchive;
$res = $zip->open( $zf, ZipArchive::CREATE );
if( $res === TRUE ){
$zip->addFromString('test.txt', 'This is some dummy data - without one file this seems to fail');
$zip->close();
} else {
var_dump( $zip );
}
/* One approach to zip a directory */
$dir=__DIR__;
$files=glob( $dir . '\*.*' );
$zip = new ZipArchive;
$res = $zip->open( $zf, ZipArchive::CREATE );
if( $res===true ){
foreach( $files as $file ) $zip->addFile( $file, basename( $file ) );
$zip->close();
}
?>
close()
, а не по вызовуopen()
.... поскольку вы не вызываетеclose()
, он никогда не записывается