Folder zip php dan subfolder

Kita bisa menggunakan kelas PHP ZipArchive untuk zip dan unzip folder di PHP. Mulai dari PHP5. 3, kelas ini sudah terpasang. Untuk menggunakan di windows pengguna perlu mengaktifkan php_zip. dll di dalam php. ini

Contoh

 open($zipcreated, ZipArchive::CREATE ) === TRUE) {
      $dir = opendir($pathdir);
      while($file = readdir($dir)) {
         if(is_file($pathdir.$file)) {
            $newzip -> addFile($pathdir.$file, $file);
         }
      }
      $newzip ->close();
   }
?>

Folder zip php dan subfolder


Folder zip php dan subfolder

Zip folder dengan Sub folder menggunakan PHP

  • Artikel
  • Komentar

Beranda » PHP » Zip folder dengan Sub folder menggunakan PHP

Oleh. Varadharaj V

Kategori. PHP

Tag. Ritsleting


Zip folder dengan Sub folder menggunakan PHP. Anda dapat membuat zip seluruh folder menggunakan artikel ini. Tetapi jika Anda ingin meng-zip folder dengan sub folder,

Folder zip php dan subfolder

Gunakan artikel ini dan buat zip dengan seluruh folder dan sub folder. Mari kita mulai dengan  pembuatan Zip

zipFile('path/to/the/zip/folder','kv_zip.zip', true);
_

Dan sekarang, kita perlu menggunakan fungsi untuk panggilan rekursif jadi buatlah fungsi di sini

function kv_scanfile($source){

}

Mari kita mulai dengan pemindaian folder dan file

if (is_dir($source) === true) {                      
        $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($source), RecursiveIteratorIterator::SELF_FIRST);
        foreach ($files as $file)   {
			$file = str_replace('\\', '/', realpath($file));
			if (is_dir($file) === true)   {
				$zip->addEmptyDir(str_replace($source . '/', '', $flag.$file . '/'));
			}
			else if (is_file($file) === true)   {
				$zip->addFromString(str_replace($source . '/', '', $flag.$file), file_get_contents($file));
			}
		}
	}
	else if (is_file($source) === true){
		$zip->addFromString($flag.basename($source), file_get_contents($source));
	}  
	else if (is_dir($source) === true){
    kv_scanfile($source);
	}

dan jika mendeteksi file, itu akan di-zip di sini. dan jika menemukan direktori apa pun, yang akan membuat direktori di dalam zip dan memanggil fungsi itu lagi dan memindai file sub folder. Jadi itu akan memanggil secara rekursif, sampai semua folder dipindai

20-07-2014

Varadharaj V

Membagikan.

Folder zip php dan subfolder

Tentang Varadharaj V

Pendiri Kvcodes, Varadharaj V adalah Analis ERP dan pengembang Web yang berspesialisasi dalam WordPress(WP), pengembangan Tema WP, pengembangan Plugin WP, Akuntansi Depan(FA), Penjualan, Pembelian, Inventaris, Buku Besar, Penggajian & HRM, CRM, FA . Tingkat Lanjut Manajemen Basis Data

Saat ini saya sedang mengembangkan dan menguji pada PC Windows 10. Pada akhirnya itu harus bekerja di Linux (Ubuntu), tetapi langkah pertama adalah membuatnya bekerja di Windows

Saya mulai dengan solusi dari https. //inti. github. com/MarvinMenzerath/4185113/72db1670454bd707b9d761a9d5e83c54da2052ac dan https. //stackoverflow. com/questions/1334613/how-to-recursively-Zip-a-directory-in-php tetapi file zip sedang dibuat, namun, bukan file yang ditambahkan

Saya menyadari masalahnya adalah jalur relatif untuk folder/file di dalam zip. Solusi saya di bawah ini adalah modifikasi dari solusi yang direferensikan, di mana saya menghapus jalur sumber dari jalur file isian setiap folder dan file untuk memberikan jalur relatif ke sumber

Sejauh ini berfungsi di Windows, langkah selanjutnya adalah menguji di Linux. Saya secara aktif mengerjakan masalah jadi nantikan terus

 

Saya membuat file “D. \Temp\php\test_zip. php” dengan kode di bawah ini
Saya mengeksekusi dengan perintah berikut (Saya telah menginstal XAMPP dengan menyertakan PHP). "D. \Temp\php>D. \xampp\php\php. exe test_zip. php”

Kode

(Pembantu. Saya menggunakan https. // www. freeformatter. com/html-escape. html untuk mengonversi kode PHP mentah menjadi sesuatu yang dapat saya tempel di antara _______________

Kami telah membuat fungsi dalam PHP yang disebut create_zip (). Yang memampatkan dan mengunduh file atau folder ke dalam zip

Anda akan melihat bahwa fungsi bernama create_zip () dipanggil di skrip PHP terakhir. Fungsi ini memampatkan file dan folder dalam zip. Dan Jika Anda ingin mengubah nama file zip yang akan dibuat dan diunduh, Anda juga dapat mengubah namanya dengan mudah

CATATAN. - Tempat Anda membuat_zip ($ files_to_zip, 'my-archive. ritsleting'); . zip” sudah selesai, sebagai gantinya Anda dapat menyimpan nama apa pun yang ingin Anda simpan

Sekarang Anda harus pergi ke browser. Dan tekan URL berikut

 http://localhost/index.php

File zip yang kami beri nama “my-archive. zip” diubah menjadi zip tersebut setelah mengunduh. Anda dapat melihat pada gambar di bawah ini

Folder zip php dan subfolder

Kesimpulan

Itu dia;

Dapatkah saya meng-zip folder dan subfolder?

Membuat folder zip memungkinkan file diatur dan dikompres ke ukuran file yang lebih kecil untuk distribusi atau menghemat ruang. Folder zip dapat memiliki subfolder di dalam folder utama ini .

Bagaimana cara zip seluruh folder di PHP?

Anda dapat membuat Zip seluruh folder menggunakan kode di bawah ini. // Dapatkan path sebenarnya untuk folder kita $rootPath = realpath('folder-to-zip'); .

Bagaimana cara membuat folder dan file zip di PHP?

Buat File ZIP di PHP . Sertakan dan inisialisasi kelas ZipArchive. Tentukan jalur direktori yang ingin Anda arsipkan sebagai ZIP. Tentukan jalur untuk menyimpan file ZIP di server. Use ZipArchiver class to archive all files and sub-directories of the given folder and create ZIP file from the script in PHP. Include and initialize the ZipArchive class. Specify the path of the directory which you want to archive as a ZIP. Specify the path to save the ZIP file on the server.

Bagaimana cara membuat folder zip dengan banyak folder?

Klik kanan pada file atau folder. Untuk menempatkan banyak file ke dalam folder zip, pilih semua file sambil menekan tombol Ctrl. Kemudian, klik kanan salah satu file, gerakkan kursor ke opsi "Kirim ke" dan pilih "Folder terkompresi (zip)" .