1:將此軟件包添加到所需軟件包列表中composer.json
"chumper/zipper": "1.0.x"
2:命令行執行
composer update
3:配置app/config/app.php
add to providers Chumper\Zipper\ZipperServiceProvider::class
add to aliases 'Zipper' => Chumper\Zipper\Zipper::class
4:遍歷文件打包至壓縮包
$files = Array();
foreach ($student as $key => $data) {
if ($data->photopath != null) {
$check = glob(storage_path('photo/' . $data->photopath));
$files = array_merge($files, $check);
}
}
Zipper::make(storage_path() . '/systemImg/' . $name)->add($files)->close();
5:讀取壓縮包文件
Zipper::make( storage_path() . '/photo/photos')->extractTo(storage_path('temp'));
$zip = new \ZipArchive();//方法2:流處理,新建一個ZipArchive的對象
$logFiles = Zipper::make($path)->listFiles('/\.png$/i');
if ($zip->open($path) === TRUE) {
foreach ($logFiles as $key) {
$stream = $zip->getStream($key);
$str = stream_get_contents($stream); //這裏注意獲取到的文本編碼
$name = iconv("utf-8", "gb2312//IGNORE", $key);
file_put_contents(storage_path() . '\temp\\' . $name, $str);
}
} else {
return '{"statusCode":"300", "message":"上傳失敗,請檢查照片"}';
}