How To Create Zip File Using Ziparchive in Laravel

Websolutionstuff | Sep-16-2020 | Categories : Laravel PHP

In this article, we will see how to create a zip file using zipArchive in laravel. Sometimes we have requirements to have functionalities like creating zip files for documentation or images and downloading them. So, at that time we can find many laravel packages to perform this task. But here, we will see how to create a zip file in laravel using zipArchive without any package. 

Laravel provides ZipArchive class for creating zip files in laravel. So, we will use ZipArchive in laravel 6 and laravel 7, and laravel 8.

How To Create Zip File In Laravel Using zipArchive

In the below code, I have created one function in the laravel controller and added ZipArchive class.

Note: I have created a Zip_Example folder in the public folder and added some images. So, you need to also create one folder and add some files also.

 

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use ZipArchive;

public function ZipArchiveExample()
{                                
    $zip = new ZipArchive;

    $fileName = 'Example.zip';

    if ($zip->open(public_path($fileName), ZipArchive::CREATE) === TRUE)
    {
        $files = \File::files(public_path('Zip_Example'));

        foreach ($files as $key => $value) {
            $file = basename($value);
            $zip->addFile($value, $file);
        }
         
        $zip->close();
    }

    return response()->download(public_path($fileName));
}

 


You might also like:

Recommended Post
Featured Post
How To Integrate Swagger In laravel 10
How To Integrate Swagger In la...

In the dynamic realm of modern web development, ensuring that APIs are well-documented, easy to comprehend, and seamless...

Read More

Aug-18-2023

How to Get Random Record in Laravel 10
How to Get Random Record in La...

Here you will learn how to get random records from DB in laravel using the inRandomOrder() method. Explore an...

Read More

Nov-10-2023

How to Create Zip File in Ubuntu using Command
How to Create Zip File in Ubun...

Hey folks! If you're anything like me, sometimes you just want a quick and straightforward way to bundle up a bunch...

Read More

Jan-24-2024

Laravel 9 CRUD Operation Example
Laravel 9 CRUD Operation Examp...

As we know Laravel 9 was officially released yesterday with many new functionalities like Symfony 6.0 components, Symfon...

Read More

Feb-10-2022