参考文档:
1.创建新的压缩文件:
function createNewZip(){
$zipFileName = 'D:\project\vr/web/temp/190627_113400.zip';
$imagePaths = [
'D:\project\vr\web\static\image\test\1.jpg',
'D:\project\vr\web\static\image\test\2.jpg',
];
$zip = new \ZipArchive();
//打开zip文件,OVERWRITE重写,CREATE没有就创建,参考
if ( $zip -> open ($zipFileName , \ZipArchive::OVERWRITE | \ZIPARCHIVE::CREATE )!== TRUE ) {
exit( "cannot create file" );
}
//向zip文件中添加文件$filename :function addFile ($filename, $localname = null)
//localname:ZIP归档文件中的本地名称,将覆盖$filename
foreach ($imagePaths as $k => $image){
$zip->addFile($image,'\create_'.($k+1).'.jpg');
}
//Close opened or created archive and save changes
$zip->close();
}
function addFile(){
$imgRootPath = Yii::getAlias('@webroot/static/').'image/test';//文件路径
$zip = new \ZipArchive();
//打开已存在的zip文件
if ( $zip -> open ('D:/project/vr/web/temp/190627_113400.zip')!== TRUE ) {
echo "cannot open file";
}
$zip->addFile('D:\project\vr\web\static\image\test\add1.jpg','\myadd1.jpg');
$zip->close();
}
$imgRootPath = Yii::getAlias('@webroot/static/').'image/test';//文件路径
$zip = new \ZipArchive();
//打开已存在的zip文件
if ( $zip -> open ('D:/project/vr/web/temp/190627_113400.zip')!== TRUE ) {
echo "cannot open file";
}
$zip->deleteName('\myadd1.jpg');
$zip->close();
4.解压文件/部分文件到指定文件夹:
$imgRootPath = Yii::getAlias('@webroot/static/').'image/test';//文件路径
$zip = new \ZipArchive();
//打开已存在的zip文件
if ( $zip -> open ('D:/project/vr/web/temp/190627_113400.zip')!== TRUE ) {
echo "cannot open file";
}
$zip->extractTo('D:/project/vr/web/temp/target');//提取全部文件
$zip->extractTo('D:/project/vr/web/temp/partTarget', array('\create_1.jpg','\create_2.jpg'));//提取部分文件
$zip->close();


发布评论